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

发布时间 - 2026-01-11 03:29:48    点击率:

前言

我们在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

总结

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


# springboot启动后执行  # spring  # boot  # 启动执行  # 执行  # Spring Boot 项目启动自动执行方法的两种实现方式  # 详解如何在Spring Boot启动后执行指定代码  # 详解Spring Boot 项目启动时执行特定方法  # 详解spring boot容器加载完后执行特定操作  # spring-boot 如何实现单次执行程序  # 还会  # 有一定  # 这篇文章  # 谢谢大家  # 做点  # 就可以  # 新建一个  # 方法如下  # 有疑问  # ContextRefreshedEvent  # ApplicationListener  # implements  # public  # lt  # gt  # Override  # void  # onApplicationEvent  # initDB  # Autowired 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251811 】 【 AI营销90571


相关推荐: Swift中switch语句区间和元组模式匹配  北京企业网站设计制作公司,北京铁路集团官方网站?  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  如何在香港服务器上快速搭建免备案网站?  Laravel如何集成Inertia.js与Vue/React?(安装配置)  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  Python正则表达式进阶教程_复杂匹配与分组替换解析  轻松掌握MySQL函数中的last_insert_id()  Android实现代码画虚线边框背景效果  DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  网站制作大概多少钱一个,做一个平台网站大概多少钱?  如何在Windows服务器上快速搭建网站?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  如何自定义建站之星网站的导航菜单样式?  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  如何用西部建站助手快速创建专业网站?  C++时间戳转换成日期时间的步骤和示例代码  Laravel distinct去重查询_Laravel Eloquent去重方法  Laravel如何使用查询构建器?(Query Builder高级用法)  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  零服务器AI建站解决方案:快速部署与云端平台低成本实践  郑州企业网站制作公司,郑州招聘网站有哪些?  ,交易猫的商品怎么发布到网站上去?  Laravel怎么使用Intervention Image库处理图片上传和缩放  成都网站制作公司哪家好,四川省职工服务网是做什么用?  用yum安装MySQLdb模块的步骤方法  Laravel如何实现模型的全局作用域?(Global Scope示例)  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  高端云建站费用究竟需要多少预算?  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  如何在IIS服务器上快速部署高效网站?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  如何在建站宝盒中设置产品搜索功能?  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  大连 网站制作,大连天途有线官网?  如何在腾讯云免费申请建站?  在Oracle关闭情况下如何修改spfile的参数  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  Laravel怎么实现支付功能_Laravel集成支付宝微信支付