package com.yeshi.buwan.util;
|
|
import com.alibaba.druid.pool.DruidDataSource;
|
import io.seata.rm.datasource.DataSourceProxy;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.context.ApplicationListener;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.event.ContextRefreshedEvent;
|
import org.springframework.stereotype.Component;
|
|
/**
|
* 系统初始化
|
*
|
* @author Administrator
|
*/
|
@Component
|
public class SpringContext implements ApplicationListener<ContextRefreshedEvent> {
|
|
|
private static boolean isInited = false;
|
|
private final static Logger logger = LoggerFactory.getLogger(SpringContext.class);
|
|
public void onApplicationEvent(ContextRefreshedEvent arg0) {
|
if (arg0.getApplicationContext().getParent() != null) {
|
System.out.println(System.currentTimeMillis());
|
onApplication(arg0);
|
}
|
}
|
|
@Bean
|
public DataSourceProxy dataSourceProxy(DruidDataSource druidDataSource) {
|
return new DataSourceProxy(druidDataSource);
|
}
|
|
|
private synchronized void onApplication(ContextRefreshedEvent context) {
|
if (!isInited) {
|
isInited = true;
|
System.out.println("系统初始化成功");
|
init();
|
}
|
}
|
|
private void init() {
|
logger.error("初始化");
|
}
|
|
|
}
|