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