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 {@Resourceprivate ApplicationContext applicationContext;@RequestMapping("/messageListener")public String messageListener(){applicationContext.publishEvent(new EventMessage("你好帅"));return "success";}
}
4、使用postman触发
5、结果