EventListenerSupport是apache lang3包提供用于处理事件监听的解决方案。
pom1
2
3
4
5 <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
使用
创建监听器接口
1
2
3
4public interface IListener {
void onListener();
}通过接口创建EventListenerSupport
1
EventListenerSupport<IListener> eventListener = EventListenerSupport.create(IListener.class);
实现监听器
1
2
3
4
5
6public class TestListener implements IListener {
public void onListener() {
System.out.println("test");
}
}向EventListenerSupport注册监听器
1
eventListener.addListener(new TestListener());
事件发生时,触发监听器.fire方法会返回IListener的代理类.运行IListener的方法,会通过代理运行所有注册监听器的相同方法.
1
eventListener.fire().onListener();