2 Matching Annotations
  1. Feb 2025
    1. 代码清单5-12 针对方法执行事件的自定义事件类型定义public class MethodExecutionEvent extends EventObject {private static final long serialVersionUID = -71960369269303337L;private String methodName;public MethodExecutionEvent(Object source) {super(source);}public MethodExecutionEvent(Object source,String methodName){super(source);this.methodName = methodName;}public String getMethodName() {return methodName;}public void setMethodName(String methodName) {this.methodName = methodName;}}我们想对方法的执行情况进行发布和监听,所以,就声明了一个MethodExecutionEvent类型,它继承自EventObject,当该类型的事件发布之后,相应的监听器即可对该类型的事件进行处理。如果需要,自定义事件类可以根据情况提供更多信息,不用担心自定义事件类的“承受力”。

      创建一个自定义事件的做法,关键在于继承的类。以及其中的serialVersionUID。

    2. Spring的ApplicationContext容器提供的容器内事件发布功能,是通过提供一套基于Java SE标准自定义事件类而实现的。

      自定义事件要继承于EventObject;而自定义事件监听类要实现继承于EventListener接口的自定义监听器接口类。

    Tags

    Annotators