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

spring boot应用内部实现应用自身重启的两种方式

在spring boot应用内部实现应用自身重启

不适合大型项目,也不太适合7*24项目,能刷新的就不要重启

方式一:通过重新创建上下文进行重启

实现:
spring boot启动类
@SpringBootApplication
public class Application {private static ConfigurableApplicationContext context;public static void main(String[] args) {context = SpringApplication.run(Application.class, args);}/*** 调用该方法即可完成应用重启*/public static void restart() {ApplicationArguments args = context.getBean(ApplicationArguments.class);Thread thread = new Thread(() -> {context.close();context = SpringApplication.run(Application.class, args.getSourceArgs());});thread.setDaemon(false); // 必须将重启线程设置为user线程,防止close方法触发jvm关闭所有线程,导致重启失败(当唯一运行的线程都是守护进程线程时,Java虚拟机将退出)thread.start();}
}

方式二:利用执行器的重启端点RestartEndpoint.restart()进行重启

实现:
pom.xml
<!--重启-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId><version>2.2.2.RELEASE</version>
</dependency>
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter</artifactId><version>2.2.2.RELEASE</version>
</dependency>
application.yml
# 重启
management:endpoint:restart:enabled: true # 启用内置重启端点
java实现
@Resource
RestartEndpoint restartEndpoint;
/*** 调用该方法即可完成应用重启*/
public void restartApplication() {restartEndpoint.restart();
}
http://www.xdnf.cn/news/839179.html

相关文章:

  • 常见海报的尺寸
  • Unity--向量点乘叉乘在Unity中的使用
  • 天玑1100和天玑920处理器哪个好
  • PostScript(PS 格式)讲解
  • 数电设计--交通灯控制系统
  • 网络监控软件PRTG的配置及使用
  • 文心一言:中国版“ChatGPT”测评
  • 极市平台|100+深度学习各方向数据集资源大盘点
  • 20+ 个免费和高级的 Web 视频播放器
  • 大数据---MySQL基础---day1
  • 十款开源数据集成工具
  • 50款七夕表白代码大合集(超全)
  • boot教程5,2.0-2.5新特性,自动配置双刃剑,spring帝国神兵出世,转投Gradle,拥抱云原生
  • 通过一个例子理解边缘计算
  • 基于Go的开源全栈测试工具RunnerGo使用详解
  • python人狗大战游戏_day22 01 初识面向对象----简单的人狗大战小游戏
  • FineVis助力智慧水务:水务可视化智能决策与管理
  • 趣味问题——分酒问题
  • 一些好玩的网站!
  • 一起学测试|性能测试工具K6:什么是K6?如何安装配置?
  • Extjs控件属性
  • python基本使用
  • mysql 用户及权限
  • 录播系统的服务器有哪些,录播系统
  • [美国]《暮光之城4:破晓(下)》[BD-RMVB.720p.中英双字][2012年冒险幻想]
  • Head First Servlets JSP 学习笔记 第一章 —— 前言和体系结构
  • 小米低调上线的良心APP,永久免费真心好用!
  • 一个简单的HTML网页 个人网站设计与实现 HTML+CSS+JavaScript自适应个人相册展示留言博客模板
  • HTML跳动爱心代码|最近很火的爱心代码你还没收到吗
  • 网站重构经验之谈:解读Div+CSS网页制作误区