基于事件监听处理的系统可以减少Java模块间代码的耦合度, 使代码结构更加清晰. 实现所谓的"职责分离"
比如,在做删除的时候, 把监听器注册到删除方法中,
在事件类中完成对象删除的后续处理, 比如,删除另外的表中相关的数据. 就是比较好的方式.
Java中注册监听器比较繁琐, 可以使用一个开源的EventBus 1.4 API框架来实现.
public class TestEventModel {
private int brandPicId;
}
import org.bushe.swing.event.annotation.EventSubscriber;
public class BrandEvent {
@EventSubscriber(eventClass = TestEventModel.class)
public void brandDelete(TestEventModel testEventModel) {
System.out.println("Haha");
}
}
import org.bushe.swing.event.EventBus;
import org.bushe.swing.event.annotation.AnnotationProcessor;
public class TestEventBus {
public static void main(String[] args) {
BrandEvent event = new BrandEvent();
AnnotationProcessor.process(event);
EventBus.publish(new TestEventModel());
}
}
分享到:
相关推荐
当你将一个类用作事件监听器时,你已经设置好一个特定的事件类型,它会用该类进行监听。接下来的操作是:一个匹配的监听器必须被加入到该组件中 组件被创建之后,可以在组件上调用如下方法来将监听器与它联系起来 ...
范例名称:Java事件处理举例,一个事件源组件上可以同时注册多个监听器
Passive Event Listeners - 被动事件监听器在写webapp页面的时候,Chrome 提醒 [Violat
Java视频教程2 Java的事件处理 JavaEvent
Java事件监听器即一组动作接口。如键盘事件KeyEvent对应的接口是: public interface KeyListener extends EventListener { public void keyPressed(KeyEvent ev); public void keyReleased(KeyEvent ev); public ...
C# Event Bus Demo C# 事件总线实例 非常简单的事件总线实例,学习入门的基础
针对于JAVA事件的总结,包括鼠标事件
事件发生时会触发监听器的成员方法,即事件处理器,传递事件对象。 事件处理器通过事件对象获得事件源,并对事件源进行处理。 Listener监听器 用于监听域对象创建和销毁的事件监听器 用于监听域对象属性增加和删除的...
keycloak-kafka-事件监听器自定义事件监听器,将所有Keycloak事件发布到Kafka
android event bus app
webviewBus.on(event, handler):添加跨端的事件监听器,如 web 端调用则监听 native 端发送的事件,反之亦然 webviewBus.once(event, handler):添加跨端的单次事件监听器,同 webviewBus.on webviewBus.off(event,...
这种机制基于观察者模式,由事件(ApplicationEvent)、事件监听器(ApplicationListener)和事件广播器(ApplicationEventMulticaster)三个主要组成部分构成。 事件是发生的动作或事情,其核心是ApplicationEvent...
在窗口程序设计里,事件的设计是不可或缺的一环。当按下按钮时,也就触发了“按钮被按”的事件,至于...Java支持授权事件模型,在授权事件模型中,事件从一个事件源授权到一个或多个事件聆听者(事件监视器)。 ......
前端开源库-stampit-event-busstampit事件总线,一个简单的stampit事件总线接口。
使用Dart 进行应用程序去耦的简单事件总线。 | | 事件总线模式 事件总线遵循发布/订阅模式。 它允许侦听器订阅事件,并允许发布者触发事件。 这使对象可以进行交互,而无需显式定义侦听器并对其进行跟踪。 事件总线...
event 事件机制, 游戏或者各种操作行为的事件。
public class YourEventListener implements EventListener< Event> {@Overridepublic void onEvent ( Event event ) {// Do something :)}} 注册监听器: import net.tassia.event.EventManager ;// ...Event...
java事件处理机制
EventBus是在整个应用程序中使用的单例。 from event_bus import EventBus bus = EventBus () @ bus . on ( 'hello' ) def subscribed_event (): print ( 'World!' ) def some_func (): print ( 'Hello' ) bus ....