spring4.2的应用事件

来源:互联网 发布:淘宝免单哪里找 编辑:程序博客网 时间:2024/06/15 17:35

监听器/类

@EventListener注解在类的方法上,并将该类作为spring的组件(该类用@Component注解)

@Componentpublic class MyEventHandle {    @EventListener(condition = "#myEvent.flag")    public void hangle(MyEvent myEvent){        System.out.println(myEvent.getUsername());    }}

事件源类

public class MyEvent {    private String username;    private boolean flag;}

事件类---发布事件/监听到事件状态(变化)

ApplicationEventPublisher的publishEvent()方法

@RequestMapping("/event")    @ResponseBody    public String eventHandle(){        MyEvent myEvent=new MyEvent();        MyEvent myEvent1=new MyEvent("fcc",false);        this.publisher.publishEvent(myEvent1);        myEvent1.setUsername("bb");        return "fcc";    }    @Autowired    private  ApplicationEventPublisher publisher;
执行这行代码时
this.publisher.publishEvent(myEvent1);
调用此事件

@EventListener(condition = "#myEvent.flag")    public void hangle(MyEvent myEvent){        System.out.println(myEvent.getUsername());    }

原创粉丝点击