spring启动完成后执行特定代码
在spring加载完成后执行特定任务 , 支持注入引用在某些情况下,有可能你会有这种需求:在Spring/SpringMVC项目中,当Spring/SpringMVC启动完成后,你需要执行一个方法来完成某些事件(比如创建网站地图,比如从订阅Redis服务器等),这个时候,可以使用Tomcat/Servlet容器提供的事件回调机制来完成,但是这样有个问题是:无法使用Spring提供的Annota
·
在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.
*/
@Service
public 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);
}
}
}}
更多推荐
已为社区贡献1条内容
所有评论(0)