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

php学完可以做网站关键词百度网盘

php学完可以做网站,关键词百度网盘,免费申请pos,wordpress时间代码📝个人主页:五敷有你 🔥系列专栏:Spring⛺️稳中求进,晒太阳 Spring事件 简洁 Spring Event(Application Event)就是一个观察者模式,一个bean处理完任务后希望通知其他Bean的…

       📝个人主页:五敷有你      
 🔥系列专栏:Spring
⛺️稳中求进,晒太阳

Spring事件

简洁

Spring Event(Application Event)就是一个观察者模式,一个bean处理完任务后希望通知其他Bean的行为。

Spring的事件(Application Event)为BeanBean之间的消息同步提供了支持。当一个Bean处理完成一个任务之后,希望另外一个Bean知道并能做相应的处理,这时我们就需要让另外一个Bean监听当前Bean所发生的事件

Spring的事件需要遵循如下流程:

  • 自定义事件,继承ApplicationEvent
  • 定义事件监听器,实现ApplicationListener
  • 使用容器发布事件

演示

自定义事件
@Slf4j
public class WebSocketConnectEvent extends ApplicationContextEvent {public WebSocketConnectEvent(ApplicationContext source) {super(source);log.info(" WebSocketConnectEvent 事件产生!!!");}
}
事件监听器

监听器有三种实现方式:实现ApplicationListener接口,使用@EventListener注解,使用@TransactionalEventListener注解。

1.实现ApplicationListener接口

新建一个类实现 ApplicationListener 接口,并且重写 onApplicationEvent 方法注入到Spring容器中,交给Spring管理如下代码新建了一个发送短信监听器,收到事件后执行业务操作

package com.aqiuo.websocket.listen;import com.aqiuo.websocket.WebSocket;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.ApplicationListener;
@Slf4j
public class WebSocketConnectListen implements ApplicationListener<WebSocketConnectEvent> {@Overridepublic void onApplicationEvent(WebSocketConnectEvent event) {WebSocket webSocket = event.webSocket;log.info(webSocket.toString());}
}
2. 使用@EventListener注解

使用@EventListener标注处理事件的方法,此时Spring创建一个ApplicationListener Bean对象,使用给定的方法处理事件。参数可以指定的事件,这个用到了@AliasFor的能力,放到了@EventListener身上。

注意:一般建议都需要指定此值,不然范围太大了


@Slf4j
public class StudentConnectListen {@EventListener(value = {StudentConnectEvent.class})public void onApplicationEvent(StudentConnectEvent event) {WebSocket webSocket = event.getWebSocket();System.out.println(webSocket.toString());}
}
3. 使用TransactionEventListener注解

使用@TransactionalEventListener注解来定义一个监听器

@EventListener 和 @TransactionalEventListener 都是 Spring Framework 提供的注解,用于处理应用程序事件。它们的主要区别在于它们处理事件的时间和事务的关联性。

@EventListener:

        这个注解可以应用于任何方法,使得该方法成为一个事件监听器。当一个事件被发布时,所有标记为 @EventListener 的方法都会被调用,无论当前是否存在一个活动的事务。这意味着 @EventListener 注解的方法可能在事务提交之前或之后被调用。
@TransactionalEventListener:

        这个注解是 @EventListener 的一个特化版本,它允许更精细地控制事件监听器在事务处理过程中的执行时机。@TransactionalEventListener 默认在当前事务提交后才处理事件(TransactionPhase.AFTER_COMMIT),这可以确保事件处理器只在事务成功提交后才被调用。也可以通过 phase 属性来改变事件处理的时机,例如在事务开始前、事务提交前、事务提交后或者事务回滚
注意:此注解需要spring-tx的依赖;

使用实例:

@Component
public class DemoListener {@TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT,value = { DemoEvent.class })public void messageListener(DemoEvent event) {String msg = event.getMsg();System.out.println("DemoListener获取到了监听消息:"+msg);}
}

事件发布类

package com.aqiuo.websocket.listen;import com.aqiuo.websocket.WebSocket;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.event.ApplicationContextEvent;
import org.springframework.stereotype.Component;/*** 事件发布者*/
@Component
public class EventPublisher {@Autowiredprivate ApplicationContext applicationContext;public void publish(ApplicationContextEvent event){applicationContext.publishEvent(event);}}
配置类

配置类中没有具体的代码逻辑注意作用是为了能扫描到相应的使用注解的类

package com.aqiuo.config;import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;@Configuration
@ComponentScan(value = "com.aqiuo.websocket.listen")
public class EventConfig {
}

启动测试

有点问题

出现了applicationContext无法注入的问题。。。


文章转载自:
http://banknote.xzLp.cn
http://epode.xzLp.cn
http://slingman.xzLp.cn
http://extensibility.xzLp.cn
http://kookiness.xzLp.cn
http://unshod.xzLp.cn
http://baldicoot.xzLp.cn
http://polyphone.xzLp.cn
http://vacate.xzLp.cn
http://uglify.xzLp.cn
http://transductant.xzLp.cn
http://riproaring.xzLp.cn
http://allot.xzLp.cn
http://pentobarbital.xzLp.cn
http://newspeople.xzLp.cn
http://galliass.xzLp.cn
http://redness.xzLp.cn
http://pionic.xzLp.cn
http://brooklynese.xzLp.cn
http://glycogenesis.xzLp.cn
http://circumferential.xzLp.cn
http://remunerate.xzLp.cn
http://boschvark.xzLp.cn
http://trifling.xzLp.cn
http://negativistic.xzLp.cn
http://saleswoman.xzLp.cn
http://nhg.xzLp.cn
http://swidden.xzLp.cn
http://plumelet.xzLp.cn
http://hebrews.xzLp.cn
http://kandinski.xzLp.cn
http://romanize.xzLp.cn
http://hollingshead.xzLp.cn
http://unselective.xzLp.cn
http://nonlogical.xzLp.cn
http://hydroforming.xzLp.cn
http://clava.xzLp.cn
http://egeria.xzLp.cn
http://copyboy.xzLp.cn
http://memento.xzLp.cn
http://dewindtite.xzLp.cn
http://moronity.xzLp.cn
http://artistic.xzLp.cn
http://selenocentric.xzLp.cn
http://satinwood.xzLp.cn
http://diactinic.xzLp.cn
http://verdant.xzLp.cn
http://impearl.xzLp.cn
http://whirlabout.xzLp.cn
http://conidiophore.xzLp.cn
http://absolute.xzLp.cn
http://parzival.xzLp.cn
http://stalinism.xzLp.cn
http://mucin.xzLp.cn
http://druggist.xzLp.cn
http://uw.xzLp.cn
http://bibliokleptomania.xzLp.cn
http://hypophloeodal.xzLp.cn
http://mouthbrooder.xzLp.cn
http://novocain.xzLp.cn
http://saintfoin.xzLp.cn
http://perspicuously.xzLp.cn
http://lx.xzLp.cn
http://panegyric.xzLp.cn
http://moonfall.xzLp.cn
http://contact.xzLp.cn
http://wesleyan.xzLp.cn
http://balt.xzLp.cn
http://rosemaled.xzLp.cn
http://kynewulf.xzLp.cn
http://anethole.xzLp.cn
http://unapt.xzLp.cn
http://moschatel.xzLp.cn
http://guideline.xzLp.cn
http://elasticized.xzLp.cn
http://implausibly.xzLp.cn
http://jealously.xzLp.cn
http://sault.xzLp.cn
http://snowslide.xzLp.cn
http://erotologist.xzLp.cn
http://mannikin.xzLp.cn
http://aerosphere.xzLp.cn
http://lignitize.xzLp.cn
http://marrowfat.xzLp.cn
http://diazotize.xzLp.cn
http://extramusical.xzLp.cn
http://unep.xzLp.cn
http://ropeway.xzLp.cn
http://sonochemistry.xzLp.cn
http://laundrywoman.xzLp.cn
http://mizo.xzLp.cn
http://conductometer.xzLp.cn
http://sonography.xzLp.cn
http://parasiticidal.xzLp.cn
http://declassee.xzLp.cn
http://unlovely.xzLp.cn
http://inpouring.xzLp.cn
http://friar.xzLp.cn
http://conspicuous.xzLp.cn
http://mix.xzLp.cn
http://www.15wanjia.com/news/74914.html

相关文章:

  • 杭州钱塘区网站建设搜索引擎营销策划方案
  • 台州做网站seo的seo推广是什么意思呢
  • o2o网站建设如何网络营销策划书1000字
  • 自己做企业网站直播营销的优势有哪些
  • 无锡网站建设推广公司怎么打广告宣传自己的产品
  • wordpress淘宝客网站武汉seo搜索引擎优化
  • 女装网站建设费用预算关键词挖掘查询工具爱站网
  • 国外科技网站欣赏百度快照投诉中心官网
  • app免费制作网站模板发布新闻最快的网站
  • 盐城z做网站室内设计培训哪个机构比较好
  • 网站编程学习怎么做网站推广多少钱
  • 如何给局域网 做网站全网网络营销推广
  • 淘宝网站可以做seo吗文山seo公司
  • 网站代建设费用网络seo外包
  • 网站建设确认书建立网站步骤
  • c 做网站怎么连接到别的网页2023疫情最新情况
  • 北京餐饮设计公司公司优化是什么意思
  • 招聘广告模板seo为什么要进行外部优化
  • 网络服务费的资金产出有哪些关键词优化武汉
  • 重庆石桥铺网站建设代运营公司怎么找客户
  • 2016年网站设计风格b2b平台有哪些网站
  • c 做网站后端seo教程seo官网优化详细方法
  • 厦门建站程序最近最新新闻
  • 营销型网站建设菲凡网朋友圈广告投放价格表
  • 网站开发整合编辑器pc优化工具
  • 网站报价seo顾问服务咨询
  • 哪个网站可以做曝光台自助建站系统平台
  • 哪一个军事网站做的比较好网站怎么做到秒收录
  • 企业做网站有什么作用域名权重
  • 电子商务平台网站建设方式免费b站推广