如何查找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配置的值。

相关推荐
IT_陈寒15 小时前
Vite打包给我挖的这个坑,差点搞崩我的项目
前端·人工智能·后端
【赫兹威客】浩哥15 小时前
基于SpringBoot+Vue3的企业办公自动化OA系统|集成Activiti工作流引擎
spring boot·后端·课程设计
卷无止境15 小时前
LiteLLM 全面解析开源AI网关如何统一管理百余种大模型
后端·python
__zRainy__15 小时前
Node系列 · Node基础:https 模块
后端·网络协议·http·https·node.js
AINative软件工程16 小时前
LLM Token Budget 工程实践:给每个请求设上限,让成本和质量都在掌控中
后端·llm·ai编程
༄沐࿆风࿆࿆16 小时前
Spring Boot 3 + Vue 3 全栈外卖系统:RabbitMQ异步解耦、MySQL/Neo4j双引擎推建
vue.js·spring boot·java-rabbitmq
卷无止境16 小时前
终端里的AI辅助,一场正在发生的编程效率变革
后端·python
程序员爱钓鱼16 小时前
Go 编程实战:Map——使用 Key-Value 管理键值数据
后端·rust·go
程序员爱钓鱼17 小时前
Rust Trait Object详解:dyn Trait与动态分发
后端·面试·rust
胸中有沟壑19 小时前
SpringBoot使用WebSocket
spring boot·后端·websocket