SpringBoot统一异常处理

Java1122zzz · · 1108 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器导致无法按原来的方法优雅停机。
经过了反复的搜索发现SpringBoot可以引用spring-boot-starter-actuator来暴露shutdown端口。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

在pom文件中加入上面的代码就OK了。
再在application.properties中加入下面的配置,这里注意2.0和1.0的配置项不一样。

management.endpoint.shutdown.enabled=true

将下面的地址端口换成实际的地址端口,之后输入命令行。

curl -X POST localhost:port/actuator/shutdown

你就会发现404了!这就是最坑的地方,在SpringBoot1.0的时候这里已经收到{"message": "Shutting down, bye..."}了。但是2.0还需要在application.properties加入一个配置项,将shutdown接口暴露出去。

management.endpoints.web.exposure.include=shutdown

这时SpringBoot2.0就可以优雅停机了,当然随便这样暴露接口并不安全,再加入一些安全的配置就OK了。


Java高架构师、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师视频免费学习加群:835638062 点击链接加入群聊【Java高级架构】:https://jq.qq.com/?_wv=1027&k=5S3kL3v


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1108 次点击  
加入收藏 微博
2 回复  |  直到 2018-09-19 16:08:04
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传