JFinal-event 3.1.3 发布,修复增量编译下注解处理器 bug

栏目: 软件资讯 · 发布时间: 3年前

内容简介:一、前言 在 mica-auto 2.1.3 中笔者修复了 mica-auto 在编辑器中增量编译的问题,本周抽出时间对 JFinal-event 也做了一番调整,修复了增量编译和对一些依赖进行了升级。 二、更新记录 2021-09-02 v3.1.3 :spark...

一、前言

mica-auto 2.1.3 中笔者修复了 mica-auto 在编辑器中增量编译的问题,本周抽出时间对 JFinal-event 也做了一番调整,修复了增量编译和对一些依赖进行了升级。

二、更新记录

2021-09-02 v3.1.3

  • ✨ 代码优化。

  • ???? 修复异常抛出。

  • ???? 修复注解处理器增量编译问题。

  • ⬆️ 依赖升级。

三、更新说明

此次更新主要对 3.0.0 新增的采用 Annotation Processor 技术,将运行期的事件类扫描改到了编译期。其中的增量编译进行了修复,从此可以不再使用类扫描,

加快服务的启动时间,减少各种容器差异导致的类扫描问题。

四、使用

4.1 maven

<dependency>
    <groupId>net.dreamlu</groupId>
    <artifactId>JFinal-event</artifactId>
    <version>3.1.3</version>
</dependency>

4.2 gradle >= 5.x

api("net.dreamlu:JFinal-event:3.1.3")
annotationProcessor("net.dreamlu:JFinal-event:3.1.3")

4.3 gradle < 5.x

compile("net.dreamlu:JFinal-event:3.1.3")

4.4 启动插件

// 初始化插件
EventPlugin plugin = new EventPlugin();
// 设置为异步,默认同步,或者使用`threadPool(ExecutorService executorService)`自定义线程池。
plugin.async();
​
// 手动启动插件,用于 main 方法启动,jfinal中不需要,添加插件即可。
plugin.start();
​
// 停止插件,用于 main 方法测试,jfinal中不需要,添加插件即可。
plugin.stop();

4.5 新建事件类

public class AccountEvent {
​
    private Integer id;
    private String name;
    private Integer age;
​
    // 省略 get set
}

4.6 编写监听

public class Test1Listener {
​
    @EventListener
    public void listenTest1Event(AccountEvent event) {
        System.out.println("AccountEvent:" + event);
    }
​
}

4.7 发送事件

AccountEvent event = new AccountEvent();
event.setId(1);
event.setName("张三");
event.setAge(18);
​
EventKit.post(event);

4.8 Idea 跳转插件

JFinal-event 3.1.3 发布,修复增量编译下注解处理器 bug

Idea 插件 JFinal-eventx下载

五、回顾

或许这次真的是最后的一个版本了,由于精力有限,笔者已经停止更新其它的几个 JFinal 插件,下面随我一起回顾下 JFinal-event 的这6年多。

  • 2015-04-27 初始化项目 网名(孤独的√3)

  • 2015-05-06 v0.1 版本发布推送到 maven 中央库

  • 2015-06-25 v0.3 支持异步,去掉了 guava 包,因为只用了一个 Multimap 集合。

  • 2015-07-04 v0.4.2 添加事件排序

  • 2016-08-19 v1.4.0 添加事件 tag

  • 2017-04-22 v1.5.1 添加了基于 rmi 的远程 Event(2.x弃用)

  • 2017-10-10 v2.0.0 基于注解和方法的兼听,不再需要单独编写 Listener 类。

  • 2018-03-02 v2.1.0 添加 `CtrlHolderEvent 处理同步、异步中 request、session、header 等参数传递。网名(如梦技术)

  • 2018-10-09 v2.2.2 升级到 jfinal 3.5 支持JFinal新版本的 bean inject。

  • 2019-04-08 v2.3.0 支持普通类作为 event 事件源,不再需要继承 ApplicationEvent

  • 2019-07-19 v3.0.0 采用注解处理器将类扫描提到编译期提升十倍的启动速度。

  • 2020-03-29 v3.1.2 新增 Idea 快速跳转插件。

感谢码云提供了这么好的一个平台作为码云提供了这么一个优秀的平台,也感谢 JFinal-event 从 JFinal 中学习到了不少极简设计。

六、最后

笔者近几年将更多的精力放到的我新的 mica 系列开源项目中,其中包括 mica-auto(Spring boot stater 利器)、mica(Spring cloud 微服务组件集)、mica-mqtt(基于 t-io 的物联网 mqtt 客户端和服务端)等,欢迎 star。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Clean Architecture

Clean Architecture

Robert C. Martin / Prentice Hall / 2017-9-20 / USD 34.99

Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”) By applying universal rules of software architecture, you can dramatically improve developer producti......一起来看看 《Clean Architecture》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试