千家信息网

SpringBoot注解方式自定义Endpoint的示例分析

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍了SpringBoot注解方式自定义Endpoint的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。概述在使用
千家信息网最后更新 2026年11月02日SpringBoot注解方式自定义Endpoint的示例分析

这篇文章主要介绍了SpringBoot注解方式自定义Endpoint的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

概述

在使用Spring Boot的时候我们经常使用actuator,健康检查,bus中使用/refresh等。这里记录如何使用注解的方式自定义Endpoint。可用于满足一些服务状态监控,或者优雅停机等。

准备

Spring Boot项目,pom中加入:

 org.springframework.boot spring-boot-starter-actuator

编写自定义Endpoint

@Configuration@Endpoint(id = "my-endpoint")public class MyEndpoint {     @ReadOperation    public Map endpoint() {        Map map = new HashMap<>(16);        map.put("message", "this is my endpoint");        return map;    }}

配置

management.endpoints.web.exposure.include=my-endpoint

启动&测试

启动后可以看到日志:

Mapped "{[/actuator/my-endpoint],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map)

注意

  • @EndPoint中的id不能使用驼峰法,需要以-分割

  • @Spring Boot会去扫描@EndPoint注解下的@ReadOperation, @WriteOperation, @DeleteOperation注解,分别对应生成Get/Post/Delete的Mapping。注解中有个produces参数,可以指定media type, 如:application/json等。

Spring Boot 常用endpoint的使用

Actuator

目的

  • 监控并管理应用程序

监控:让我们去发现和了解程序的运行状况各种指标

管理:比如说通过Actuator去做一个shutdown功能,通过访问一个特定的url去操作,默认是不开启的,另外 还可以在运行的过程中 对日志进行调整

访问方式

  • HTTP

  • JMX

默认 会把更多的 Actuator 暴露在JMX上面

依赖

  • spring-boot-starter-actuator

一些常用 Endpoint

只有health和info 默认是可以通过http 进行访问的

  • shutdown 是默认不开启的一个

  • threaddump 去看线程情况

  • Prometheus 虽然是默认开启 但是 必须在pom文件上加入相关依赖 才能提供支持

如何访问 Actuator Endpoint

HTTP 访问

  • /actuator/

端口与路径

  • management.server.address=

Actuator Endpoint 发布的地址

  • management.server.port=

Actuator Endpoint 发布的端口号

  • management.endpoints.web.base-path=/actuator

自定义端口

  • management.endpoints.web.path-mapping.=路径

修改端点的访问路径(映射),端点默认使用的是它的 值

开启 Endpoint

  • management.endpoint..enabled=true

开启名为id的 Endpoint

  • management.endpoints.enabled-by-default=false

端点启用是选择性加入而不是选择性排除。表示禁用了所有端点

暴露 Endpoint

  • management.endpoints.jmx.exposure.exclude=

jmx方式排除需要公开的端点

  • management.endpoints.jmx.exposure.include=*

jmx方式包含需要公开的端点

  • management.endpoints.web.exposure.exclude=

http方式排除需要公开的端点

  • management.endpoints.web.exposure.include=info, health

感谢你能够认真阅读完这篇文章,希望小编分享的"SpringBoot注解方式自定义Endpoint的示例分析"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

方式 端点 注解 篇文章 监控 示例 分析 常用 日志 更多 程序 端口 路径 选择性 支持 运行 选择 优雅 价值 兴趣 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 手冲咖啡和咖啡机区别 互联网科技有限公司图片 广州互联网科技公司 嘟嘟瓜互联网科技 善班互联网科技有限公司 亿账通互联网科技 有木互联网科技 菲比寻常互联网科技 开启互联网科技时代小说 互联网科技产品 互联网教育科技公司vipkid 互联网科技研发水平 如何创新互联网科技 烟台灵鸽互联网科技有限公司 小米互联网科技园入驻 深圳无忧互联网科技 中天科技中国工业互联网 产业互联网科技服务公司 扫呗互联网科技有限公司 全球科技与互联网公司市值变化 甘肃拓世互联网科技有限公司 深圳卡尔迅互联网科技有限公司怎么样 南山科技园互联网公司有哪些 河南住房之家互联网科技 朱啸虎曾投资哪些互联网科技企业 山东有哪些互联网科技公司 有人说阿里系是互联网科技企业 互联网与数字科技关系 全球科技与互联网公司市值变化 北京互联网科技类企业分布
0