介绍
这篇文章主要介绍怎么在春天引导启动后执行指定代码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
在开发时有时候需要在整个应用开始运行时执行一些特定代码,比如初始化环境,准备测试数据等等。
在春天中可以通过ApplicationListener来实现相关的功能,不过在配合弹簧引导使用时就稍微有些区别了。
<强>创建ApplicationListener 强>
这里以填充部分测试数据为例子,首先实现ApplicationStartup类。
publicclass ApplicationStartup implements ApplicationListener, { @Override publicvoidonApplicationEvent (ContextRefreshedEvent 事件),{ SourceRepository SourceRepository =, event.getApplicationContext () .getBean (SourceRepository.class); Source je =new 源(“justice_eternal吧“,“http://tieba.baidu.com/f?kw=justice_eternal"); sourceRepository.save(我); } }
这类并不会自动执行,需要我们注册。
<强>硬编码注册强>
春季启动有一个类SpringApplication,这个类是春天的引导入口,包含所有的配置。
, @ configuration @ComponentScan @EnableAutoConfiguration publicclass WebApplication { publicstaticvoidmain (String [], args) { SpringApplication springApplication=new springApplication (WebApplication.class); springApplication.addListeners (new ApplicationStartup ()); springApplication.run (args); } }
硬编码的弊端在于无法区别环境,当我们需要部署应用到生产环境时需要修改代码。
<强>配置文件强>
弹簧引导支持资料模式,在应用程序中。属性中配置
spring.profiles.active=dev
然后在application-dev。属性中配置开发环境的参数。
增加一个配置来注册自定义的监听器
context.listener.classes=cn.acgmo。ApplicationStartup
以上是“怎么在春天引导启动后执行指定代码”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!