spring启动完成后执行特定代码

来源:互联网 发布:mysql commit 编辑:程序博客网 时间:2024/06/05 04:36

在spring加载完成后执行特定任务 , 支持注入引用

在某些情况下,有可能你会有这种需求:在Spring/SpringMVC项目中,当Spring/SpringMVC启动完成后,你需要执行一个方法来完成某些事件(比如创建网站地图,比如从订阅Redis服务器等),这个时候,可以使用Tomcat/Servlet容器提供的事件回调机制来完成,但是这样有个问题是:无法使用Spring提供的Annotation,解决方法是

import com.alibaba.fastjson.JSONObject;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.ApplicationListener;import org.springframework.context.event.ContextRefreshedEvent;import org.springframework.stereotype.Service;/**在项目启动完成后执行 * Created by h on 2017/3/9. */@Servicepublic class MyListener implements ApplicationListener<ContextRefreshedEvent> {    @Autowired    private WeixinService weixinService;    @Override    public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {        if(contextRefreshedEvent.getApplicationContext().getParent() == null){            //需要执行的代码            JSONObject  json= weixinService.getAccessToken();            System.err.println("json="+json);                   }    }}}


原文地址:Spring/SpringMVC在启动完成后执行方法

http://www.cnblogs.com/itjcw/p/5977911.html

0 0