事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ

事件模型 、消息发布订阅

1 事件模型 ApplicationEventPublisher.publishEvent(ApplicationEvent)

一个事件模型有三个组成部分:被监听对象-事件发布者(ApplicationEventPublisher),事件event(ApplicationEvent)和监听对象listener(注解或实现ApplicationListener,可使用异步注解@Async)

监听对象:具体实现可用   ApplicationContext,而获得ApplicationContext
可使用 实现 ApplicationContextAware

事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第1张图片

1.1 通过 publishEvent发布之后,如何找到

1.1.1 找到相应的参数为publishEvent方法参数,且带有@TransactionalEventListener的spring容器中的方法`,可指定事务后还是事务前,以及异步执行的连接池

事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第2张图片

1.2 实现监听器,且泛型和唯一方法的参数为 publishEvent方法参数,

事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第3张图片

2 redis的发布订阅

2.1 订阅者

继承JedisPubSub 重写接收到消息后的内容

2.2 发布者

redis.publish(String channel, String message)
事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第4张图片

2.3 订阅监听

redis.subscribe(JedisPubSub jedisPubSub, String… channels);
事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第5张图片

3 消息队列mq

rabbitMq -此处只做一个同类型的记录,实际操作可搜索其他博客
事件模型-ApplicationEventPublisher AND 消息发布订阅redis AND MQ_第6张图片

你可能感兴趣的:(java,redis,java)