想在springmvc项目启动之后执行一些操作,比如加载一些数据到内存。下面介绍两种方式:
1、通过实现ApplicationListener接口
@Service
public class StartupListener implements ApplicationListener<ContextRefreshedEvent> {
@Override
public void onApplicationEvent(ContextRefreshedEvent evt) {
// 防止启动两次
if (evt.getApplicationContext().getParent() != null) {
buildIndex();
}
}
private void buildIndex() {
System.out.println("********************build index");
}
}
对于该类,要在spring配置文件中进行配置:
<!-- 配置项目启动之后内容 -->
<bean id="startUpListener" class="com.suiyuan.util.StartupListener"></bean>
2、通过标注实现PostConstruct
@Service
public class StartupTest {
@PostConstruct
public void otherWork() {
System.out.println("other work");
}
}