java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > spring boot启动项目之后执行的实现

spring boot在启动项目之后执行的实现方法

作者:Tomoya

在开发时有时候需要在整个应用开始运行时执行一些特定代码,比如初始化环境,下面这篇文章就来给大家介绍了关于spring boot在启动项目之后执行自己要执行的东西的实现方法,文中给出了详细的示例代码,需要的朋友可以参考下。

前言

我们在web项目启动之后有时候还会做点其它的东西(比如,导入数据脚本),下面就说说spring-boot里怎么在程序启动后加入自己要执行的东西

方法如下:

新建一个类:BeforeStartup.java

@Configuration
public class BeforeStartup implements ApplicationListener<ContextRefreshedEvent> {

 @Autowired
 private InitDB initDB;

 @Override
 public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
  initDB.createUser();
 }

}

InitDB.java

@Component
public class InitDB {

 Logger log = Logger.getLogger(MyInvocationSecurityMetadataSource.class);

 @Autowired
 private UserService userService;

 // create user
 public void createUser() {
  User user = new User();
  user.setAvatar("aaa");
  user.setBlock(false);
  user.setEmail("aaa");
  user.setInTime(new Date());
  user.setPassword("1111");
  user.setSignature("1111");
  user.setUrl("222");
  user.setUsername("bb");
  userService.save(user);
 }
}

再配合一个变量记录系统是否初始化过,如果初始化了,就不再初始化了,这样就可以做到启动系统之后再自动将默认数据插入,很是方便

相关代码参见:https://github.com/tomoya92/pybbs

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:
阅读全文