@Component public class xxxxInitProcess implements ApplicationListener<ContextRefreshedEvent> {
@Override public void onApplicationEvent(ContextRefreshedEvent event) {
/** * 有spring和spring mvc两个context,会执行两次,故需要判断一下parent。 */ if(event.getApplicationContext().getParent() != null){ return; } ...... } }
一般都配合spring mvc使用,由于spring mvc自己也是一个context,故这个onApplicationEvent方法会执行两次,把mvc那次跳过去就好了。
spring的context是root context,所以它的parent是null。
|