当前位置: 首页 > news >正文

网站虚拟空间过期最好的网站设计公司

网站虚拟空间过期,最好的网站设计公司,网站域名账号,深圳建站公司专业公司目录 1、Spring监听器简介 2、事件#xff08;Event#xff09; 3、监听器#xff08;Listener#xff09; 3、事件发布器 4、监听器使用 4.1、自定义事件 4.2、自定义监听器 4.3、发布事件 4.4、测试 4.5、使用注解方式监听 4.6、异步事件处理 5、总结 1、Spri…目录 1、Spring监听器简介 2、事件Event 3、监听器Listener 3、事件发布器 4、监听器使用 4.1、自定义事件 4.2、自定义监听器 4.3、发布事件 4.4、测试 4.5、使用注解方式监听 4.6、异步事件处理 5、总结 1、Spring监听器简介 Spring 监听器Listener用于监听应用程序中的事件并在事件发生时执行特定操作。常见的事件包括应用启动、关闭、请求处理等。Spring 提供了多种监听器接口例如ApplicationListener、ServletRequestListener、HttpSessionListener等开发者可以通过实现这些接口或者添加对应的注解来监听和处理事件。 2、事件Event 在Spring事件顶层类为EventObject抽象类ApplicationEvent继承了EventObject是所有事件的基础类自定义事件需要继承此类。Spring中提供了SpringApplicationEvent在该类下提供一些实现类。 继承这些类的自定义类都可用作为事件类进行发布事件通常用于在系统中发生某些操作通知其他的模块进行一些相应的操作例如系统启动事件、客户注册系统等。 3、监听器Listener Spring中的监听器ApplicationListener属于函数式接口实现该接口的类可用监听特点类型的事件当检查到特点类型事件时可用自动进行一些用户开发的操作。 FunctionalInterface public interface ApplicationListenerE extends ApplicationEvent extends EventListener {void onApplicationEvent(E event);default boolean supportsAsyncExecution() {return true;}static T ApplicationListenerPayloadApplicationEventT forPayload(ConsumerT consumer) {return (event) - {consumer.accept(event.getPayload());};} } 3、事件发布器 Spring中发布事件的接口ApplicationEventPublisher用于发布事件。ApplicationContext上下文接口继承了该类可以发布事件。 FunctionalInterface public interface ApplicationEventPublisher {default void publishEvent(ApplicationEvent event) {this.publishEvent((Object)event);}void publishEvent(Object event); } 4、监听器使用 4.1、自定义事件 创建自定义事件类自定义事件类需要继承ApplicationEvent。 package com.gs.listener;import lombok.AllArgsConstructor; import lombok.Data; import org.springframework.context.ApplicationEvent;public class CustomEvent extends ApplicationEvent {private String message;public CustomEvent(Object source, String message) {super(source);this.message message;}public String getMessage(){return this.message;} }4.2、自定义监听器 自定义监听器需要实现ApplicationListener接口。 package com.gs.listener;import org.springframework.context.ApplicationListener;Component public class CustomEvenListener implements ApplicationListenerCustomEvent {Overridepublic void onApplicationEvent(CustomEvent event) {System.out.println(接受客户消息 event.getMessage());} }4.3、发布事件 自定义事件发布器需要实现ApplicationEventPublisher接口 package com.gs.listener;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; import org.springframework.stereotype.Component;Component public class CustomEventPublisher {Autowiredprivate ApplicationEventPublisher publisher;public void publishCustomEvent(String message){System.out.println(发布自定义事件);publisher.publishEvent(new CustomEvent(this,这是一个自定义测试事件));} }4.4、测试 package com.gs.listener;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.stereotype.Component;Component public class CustomEventTest implements CommandLineRunner {Autowiredprivate CustomEventPublisher publisher;Overridepublic void run(String... args) throws Exception {publisher.publishCustomEvent(Hello Spring Event);} }运行结果 4.5、使用注解方式监听 通过在方法上使用EventListener注解进行监听 package com.gs.listener;import org.springframework.context.ApplicationListener; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Component;Component public class CustomEvenListener {EventListenerpublic void handleCustomEvent(CustomEvent event) {System.out.println(接受客户消息: event.getMessage());} }4.6、异步事件处理 默认情况下Spring事件是同步处理的。如果希望事件处理异步进行可以使用Async注解。例如 package com.gs.listener;import org.springframework.context.ApplicationListener; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component;Component public class CustomEvenListener {AsyncEventListenerpublic void handleCustomEvent(CustomEvent event) {System.out.println(接受客户消息: event.getMessage());} }启动类开启异步 EnableAsync SpringBootApplication public class DemoProjectApplication {public static void main(String[] args) {SpringApplication.run(DemoProjectApplication.class, args);}} 5、总结 Spring的监听器机制提供了一种灵活的方式来处理应用程序中的事件。通过自定义事件和监听器可以实现模块之间的解耦提高代码的可维护性和可扩展性。同时Spring还提供了注解方式和异步处理的支持使得事件处理更加方便和高效。
http://www.dnsts.com.cn/news/267022.html

相关文章:

  • 美了一站式变美共享平台杭州建设网考试信息网
  • 湛江做网站软件徐州地区网站建设
  • 网站建设捌金手指下拉十一北京网站建设公司哪些好
  • 网站设计的目的wrodpress做学校网站
  • 网站设计厂阅读app软件开发
  • 郑州到安阳深圳网站seo优化
  • dede 网站内页标题修改河南做酒店网络系统网站
  • 中国南京网站梅地卡伦手表网站
  • 正能量直播网站郴州今天几例
  • 简述电子商务网站的内容设计与开发想自己在家做外贸网站
  • 三站合一的网站怎么做教程注册城乡规划师含金量
  • 如何做网站淘客推广wordpress同步新浪微博
  • 国产做爰网站厦门网站建设平台
  • 徐州建立网站网站续费多少钱
  • 购买模板做网站网站被惩罚
  • 四川省住房和城乡建设厅网站打不开163邮箱企业邮箱注册
  • 盗版小说网站怎么做的cms系统的优点
  • 网站怎么做关键词流量苏州网站 制作 公司
  • 建设工程个人信息采集哪个网站wordpress 作者id
  • 婚介网站建设的策划网站建设的目的与意义
  • 微网站管理平台拓者设计吧室内设计官网案例
  • 个人网站域名备案流程建一个外贸网站要多少钱
  • 制作网站开发wordpress怎么找到php文件
  • 做外国网站用什么服务器穿着西裤做的网站
  • 网站如何做导航条下拉菜单wordpress启用旧的编辑器
  • 网站策划建设阶段的推广一个人制作网站
  • seo网站建设微宣化网站制作公司
  • 免费做网页的网站网站前台开发教程
  • 宁波企业网站建设深圳将进一步优化防控措施
  • 青海做网站好的公司如何重新运行wordpress