当前位置: 首页 > news >正文

烟台优化网站公司哪家好免费的网站推广软件下载

烟台优化网站公司哪家好,免费的网站推广软件下载,亿唐网不做网站做品牌,凤凰一级a做爰片免费网站Spring Boot 项目启动后自动加载系统配置的多种实现方式 在 Spring Boot 项目中,可以通过以下几种方式实现 在项目启动完成后自动加载系统配置缓存操作 的需求: 1. 使用 CommandLineRunner CommandLineRunner 是一个接口,可以用来在 Spring…

Spring Boot 项目启动后自动加载系统配置的多种实现方式

在 Spring Boot 项目中,可以通过以下几种方式实现 在项目启动完成后自动加载系统配置缓存操作 的需求:


1. 使用 CommandLineRunner

CommandLineRunner 是一个接口,可以用来在 Spring Boot 应用启动后立即执行一些逻辑代码。

实现方式:
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;@Component
public class SystemConfigLoader implements CommandLineRunner {@Overridepublic void run(String... args) throws Exception {// 在这里加载系统配置缓存System.out.println("项目启动完成,开始加载系统配置...");// 模拟加载配置操作loadSystemConfig();}private void loadSystemConfig() {// 假设从数据库中加载配置System.out.println("系统配置加载成功!");}
}

2. 使用 ApplicationRunner

ApplicationRunnerCommandLineRunner 类似,但支持接收一个 ApplicationArguments 对象,用于更灵活地处理传入参数。

实现方式:
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;@Component
public class SystemConfigLoader implements ApplicationRunner {@Overridepublic void run(ApplicationArguments args) throws Exception {// 在这里加载系统配置缓存System.out.println("项目启动完成,开始加载系统配置...");loadSystemConfig();}private void loadSystemConfig() {// 假设从数据库中加载配置System.out.println("系统配置加载成功!");}
}

3. 使用 @EventListener 监听 ApplicationReadyEvent

通过监听 ApplicationReadyEvent,可以在 Spring Boot 完成所有启动流程后执行逻辑。

实现方式:
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Component;@Component
public class SystemConfigLoader {@EventListener(ApplicationReadyEvent.class)public void onApplicationReady() {// 在项目启动完成后加载系统配置System.out.println("项目启动完成,开始加载系统配置...");loadSystemConfig();}private void loadSystemConfig() {// 假设从数据库中加载配置System.out.println("系统配置加载成功!");}
}

4. 使用 @PostConstruct 注解

@PostConstruct 注解会在 Bean 初始化后执行,但其执行时机稍早于项目完全启动完成,因此需要配合延时操作来确保项目完全启动后再执行。

实现方式:
import jakarta.annotation.PostConstruct;
import org.springframework.stereotype.Component;@Component
public class SystemConfigLoader {@PostConstructpublic void init() {// 延时加载以确保项目完全启动new Thread(() -> {try {Thread.sleep(2000); // 模拟延时System.out.println("项目启动完成,开始加载系统配置...");loadSystemConfig();} catch (InterruptedException e) {Thread.currentThread().interrupt();}}).start();}private void loadSystemConfig() {// 假设从数据库中加载配置System.out.println("系统配置加载成功!");}
}

5. 使用 SmartLifecycle 接口

SmartLifecycle 提供了更灵活的控制,可以控制代码的启动和停止时机。

实现方式:
import org.springframework.context.SmartLifecycle;
import org.springframework.stereotype.Component;@Component
public class SystemConfigLoader implements SmartLifecycle {private boolean running = false;@Overridepublic void start() {// 项目启动完成后执行逻辑System.out.println("项目启动完成,开始加载系统配置...");loadSystemConfig();running = true;}@Overridepublic void stop() {// 停止逻辑(可选)System.out.println("项目停止时执行清理工作...");}@Overridepublic boolean isRunning() {return running;}private void loadSystemConfig() {// 模拟加载配置操作System.out.println("系统配置加载成功!");}
}

对比与推荐

  1. 简单场景:

    • 推荐使用 CommandLineRunnerApplicationRunner,实现简单且清晰。
  2. 更灵活的监听启动事件:

    • 推荐使用 @EventListener 监听 ApplicationReadyEvent,可以确保所有 Bean 初始化完成。
  3. 需要更细粒度的控制:

    • 使用 SmartLifecycle 提供更灵活的控制。
http://www.mmbaike.com/news/81503.html

相关文章:

  • 网站风格分析怎么写西安网站设计
  • 亚马逊虚拟主机做网站今日头条新闻最新事件
  • 工行网站如何做理财风险评估杭州上城区抖音seo有多好
  • 安庆市大观区城乡建设局网站免费推广seo
  • 郑州网站建设与制作公司品牌营销策划
  • 做类似58同城的网站青岛网站seo
  • 做婚恋网站seo公司运营
  • win8风格wordpress博客主题超级seo外链
  • 计算机应用专业(网站开发)百度西安分公司地址
  • 单仁营销网站的建设信息流优化师证书
  • 湖北省两学一做网站网站建设开发价格
  • 动态网站制作价格游戏优化大师手机版
  • 做网站送商标台州百度关键词排名
  • 设计师专用网站进入百度首页
  • 做微信小程序是不是不用做网站营口建网站的公司
  • 腾讯云服务器WordPress仁茂网络seo
  • b2b网站都有哪些产品推广方案模板
  • 抖音seo排名系统处理事件seo软件
  • 订阅号怎么做免费的视频网站互联网推广方案怎么写
  • 动态网站开发用百度账号
  • html5毕业设计题目大全陕西seo快速排名
  • 网站建设成本分析烟台seo
  • 那些企业网站做的漂亮推广软件的渠道有哪些
  • 旅行网站的建设目录全网网络营销推广
  • 在线免费货源网站入口网站推广的工作内容
  • 怎样做微信推广网站哈市今日头条最新
  • 网站下方链接图标怎么做b2b平台是什么意思
  • wordpress会员注册管理系统济南seo排行榜
  • 做外贸业务员需要什么条件系统优化软件推荐
  • 重庆智能网站建设餐饮最有效的营销方案