如何查找SpringBoot应用中的请求路径(不使用idea)

背景

昨天有个同事向我咨询某个接口的物理表是哪个,由于公司业务较多、这块业务的确不是我负责的,也没有使用idea不能全局搜索(eclipse搜不到jar内的字符串),也就回复了不清楚。

除了自己写代码输出servlet的路径和类外,发现了一个我之前没用过的方法:Spring Boot Actuator,分享给大家。

文中未启用/actuator/**路径的授权访问功能,仅供测试环境学习。如需配置授权访问请自行研究。

操作方式

1、引入actuator依赖

gradle

groovy 复制代码
implementation "org.springframework.boot:spring-boot-starter-actuator"

maven

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2、配置文件启用actuator

yaml 复制代码
management:
  server:
    port: ${server.port} #引用server.port,与服务同端口,也可设其他值。想禁用/actuator端口可设为-1
  endpoints:
    web.exposure.include: "mappings" #仅暴露出路径映射信息

3、访问接口获取json

访问服务地址/actuator/mappings 会返回一个json,将该json复制到文本中,使用vscode或其他工具格式化成json。

然后就可以在json中搜索到相关的信息了。

  • contexts.应用名.mappings.dispatcherServlets.dispatcherServlet 数组里就是当前服务通过springmvc方式暴露的接口信息了。
  • contexts.应用名.mappings.servletFilters 数组里包含过滤器信息。
  • contexts.应用名.mappings.servlets 数组中包含原生写法注入的servlet信息。

这里的应用名对应spring.application.name配置的值。

相关推荐
计算机程序设计小李同学24 分钟前
动漫之家系统设计与实现
java·spring boot·后端·web安全
布列瑟农的星空40 分钟前
SSE与流式传输(Streamable HTTP)
前端·后端
开心就好20251 小时前
使用 HBuilder 上架 iOS 应用时常见的问题与应对方式
后端
开心猴爷1 小时前
Swift IPA 混淆在工程实践中的方式,分析仅依赖源码层混淆的局限性
后端
用户4099322502121 小时前
Vue3 v-if与v-show:销毁还是隐藏,如何抉择?
前端·vue.js·后端
黄俊懿1 小时前
【深入理解SpringCloud微服务】Seata(AT模式)源码解析——全局事务的回滚
java·后端·spring·spring cloud·微服务·架构·架构师
Java编程爱好者1 小时前
SpringBoot启动太慢?几个优化技巧
后端
喷火龙8号1 小时前
修复 Hertz + OpenTelemetry 链路追踪中的数据竞争问题
后端
JIngJaneIL2 小时前
基于springboot + vue健康管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
程序员小胖2 小时前
每天一道面试题之架构篇|Java 热部署插件化架构设计
后端