1、创建消息的实体类
package com.demo;
/**
* 监听的实体类
*
*/
public class EventMessage {
private String name;
public EventMessage(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
2、创建消息接收
package com.demo;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Component;
@Component
public class MessageEventListener {
@EventListener(EventMessage.class)
public void onApplicationEvent(EventMessage eventMessage) {
System.out.println("监听器接收的消息:"+ eventMessage.getName());
}
}
3、消息发送的controller
package com.demo;
import org.springframework.context.ApplicationContext;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@RestController
public class MessageController {
@Resource
private ApplicationContext applicationContext;
@RequestMapping("/messageListener")
public String messageListener(){
applicationContext.publishEvent(new EventMessage("你好帅"));
return "success";
}
}
4、使用postman触发
5、结果