zoukankan      html  css  js  c++  java
  • Spring的事务机制

    ---恢复内容开始---

    内定的=>(只需要在xml 中添加一个bean)

    在xml 中添加

    <bean id="listener" class="com.test.事件机制.listener">

    </bean>

    测试

    public void listenerTest(){
    AbstractApplicationContext aContext=new ClassPathXmlApplicationContext("bean.xml");
    aContext.refresh();
    }

    public class listener implements ApplicationListener{

    @Override
    public void onApplicationEvent(ApplicationEvent arg0) {
    // TODO Auto-generated method stub
    if (arg0 instanceof ContextClosedEvent) {
    System.out.println(arg0.getClass().getSimpleName()+"事实发生");
    }

    }

    自定义事件==》

    event:

    public class myselfEvent extends ApplicationEvent{
    String name;
    public myselfEvent(Object source) {
    super(source);

    }
    public myselfEvent(Object o,String name){
    super(o);
    this.name=name;
    }
    }

    发布:

    public class animal implements ApplicationContextAware{
    private ApplicationContext ac;
    private String sleepsString;

    public String getSleepsString() {

    ac.publishEvent(new myselfEvent(this, this.sleepsString));
    return sleepsString;
    }

    public void setSleepsString(String sleepsString) {
    this.sleepsString = sleepsString;
    }

    @Override
    public void setApplicationContext(ApplicationContext arg0)
    throws BeansException {
    // TODO Auto-generated method stub
    this.ac=arg0;
    }

    }

    监听:

    public class listener implements ApplicationListener{

    @Override
    public void onApplicationEvent(ApplicationEvent arg0) {
    // TODO Auto-generated method stub

    if (arg0 instanceof myselfEvent) {
    System.out.println(arg0.getClass().getSimpleName()+"事实发生");
    }else{
    System.out.println(arg0.getClass().getName()+"other");
    }

    }

    }

    测试:

    public void myselfListenerTest(){
    AbstractApplicationContext context=new ClassPathXmlApplicationContext("bean.xml");
    animal a=(animal) context.getBean("myselfListener");
    System.out.println(a.getSleepsString());
    }

  • 相关阅读:
    restFul接口设计规范[仅供参考]
    Vue的router路由跳转传参——实现跳转时url不显示参数
    vue-cli(vue脚手架)搭建超详细教程
    Vue面试常见问题
    Ubuntu18.04安装时的一些问题
    仿BBS项目
    前端常用正则校验
    orm数据库查询优化及数据库三大设计范式总结
    SpringBoot+Git+Jenkins+Docker实现CI/CD
    Jenkins Pipeline+Maven+Gitlab持续集成构建问题集锦
  • 原文地址:https://www.cnblogs.com/nedhome/p/4442157.html
Copyright © 2011-2022 走看看