JFinal-event v2.2.2 发布,支持JFinal 3.5 新版本inject

栏目: Java · 发布时间: 5年前

内容简介:JFinal-event 2.x 参考Spring 4.2.x中Event的使用方式而生,为JFinal用户带来更多方便。更新情况:2018-10-09 v2.2.2

JFinal-event 2.x 参考Spring 4.2.x中Event的使用方式而生,为JFinal用户带来更多方便。

更新情况:

2018-10-09 v2.2.2

升级到jfinal 3.5 (不兼容老版本)支持新版本inject,升级到 java 8优化部分代码。 

DefaultBeanFactory改为jfinal 3.5 aop 创建,删除 DuangBeanFactory。 

优化 ObjenesisBeanFactory 支持jfinal 3.5 inject

2018-08-14 v2.2.1

ApplicationEvent 添加泛型,方便类型转换。

2018-04-15 v2.2.0

插件添加手动注册监听类 plugin.register(Class<?> clazz), 多个类,多次调用register方法即可。

JFinal-event 2.x的使用:

1. 初始化插件

EventPlugin plugin = new EventPlugin();
// 设置为异步,默认同步,或者使用`threadPool(ExecutorService executorService)`自定义线程池。
plugin.async();
 
// 设置扫描jar包,默认不扫描
plugin.scanJar();
// 设置监听器默认包,默认全扫描,支持;分隔多个包
plugin.scanPackage("net.dreamlu");
 
// bean工厂,默认为DefaultBeanFactory,可实现IBeanFactory自定义扩展,可扩展从IOC容器中获取
plugin.beanFactory(new ObjenesisBeanFactory());
 
// 手动启动插件,用于main方法启动,jfinal中不需要,添加插件即可。
plugin.start();
 
// 停止插件,用于main方法测试
plugin.stop();

2. 新建事件类

// 继承 ApplicationEvent
public class Test1Event extends ApplicationEvent {
    private static final long serialVersionUID = 6994987952247306131L;
        public Test1Event(Object source) {
        super(source);
    }
}

3. 编写监听

监听器可写在任何有默认构造器(无参构造器)的类(包括Controller、Model)中,如果类不能使用无参构造器初始化,请设置为 ObjenesisBeanFactory bean工厂,依赖 objenesis jar包。

public class TestListener {
	@EventListener
	public void listenTest1Event(Test1Event event) {
	    System.out.println("Test1Event:" + event.getSource());
	}
	 
	@EventListener
	public void listenTest1Event(Test2Event event) {
	    System.out.println("Test1Event:" + event.getSource());
	}
}

4. 发送事件

EventKit.post(new Test1Event("hello1"));

更多示例代码和更新记录请查看gitee中的 readme 说明。


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

查看所有标签

猜你喜欢:

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

A Philosophy of Software Design

A Philosophy of Software Design

John Ousterhout / Yaknyam Press / 2018-4-6 / GBP 14.21

This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first ......一起来看看 《A Philosophy of Software Design》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具