Guava为我们提供了事件总线EventBus库,它是事件发布-订阅模式的实现,让我们能在领域驱动设计(DDD)中以事件的弱引用本质对我们的模块和领域边界很好的解耦设计。
事件
Guava 发布-订阅模式 中传递的事件,是一个普通的POJO类。
class OrderEvent {
private String message;
public OrderEvent(String message) {
this.message = message;
}
public String getMessage() {
return message;
}
}
订阅
使用Guava之后发布-订阅模式就变得很简单了,如果你需要订阅某种类型的消息,只需要在指定的方法上加上@Subscribe注解即可。代码如下:
class HelloEventListener{
@Subscribe
public void