Java Event Bus 事件监听器的应用
监听器的应用可以减少Java模块间代码的耦合度, 使代码结构更加清晰. 实现所谓的"职责分离"
?
比如,在做删除的时候, 把监听器注册到删除方法中,
?
在事件类中完成对象删除的后续处理, 比如,删除另外的表中相关的数据.? 就是比较好的方式.
?
Java中注册监听器比较繁琐,? 可以使用一个开源的框架来实现.
?
EventBus 1.4 API?
测试类
?
public class TestEventBus {public static void main(String[] args){BrandEvent event = new BrandEvent();AnnotationProcessor.process(event);EventBus.publish(new TestEventModel());EventBus.publish(new TestEventModel1());}}
?
事件的后续处理类和方法 :
?
public class BrandEvent {@EventSubscriber(eventClass=TestEventModel.class)public void brandDelete(TestEventModel testEventModel) {System.out.println("Haha");service.deletePicById(testEventModel.brandPicId);}@EventSubscriber(eventClass=TestEventModel1.class)public void brandDelete1(TestEventModel1 testEventModel1) {System.out.println("Haha11");}}?
需要设置的条件和参数数据:
?
public class TestEventModel {private int brandPicId;}?
例子见附件...
?
?
?
?
?