映射 (mappings
)
mappings
端点提供有关应用程序请求映射的信息。
获取映射
要获取映射,向 /actuator/mappings
发送 GET
请求,如下面的基于 curl 的示例所示:
$ curl 'http://localhost:52511/actuator/mappings' -i -X GET \
-H 'accept-encoding: gzip' \
-H 'user-agent: ReactorNetty/1.2.6' \
-H 'accept: */*'
响应结果类似于以下内容:
HTTP/1.1 200 OK
Content-Type: application/vnd.spring-boot.actuator.v3+json
Transfer-Encoding: chunked
Date: Sun, 25 May 2025 10:03:28 GMT
Content-Length: 5317
{
"contexts" : {
"application" : {
"mappings" : {
"dispatcherServlets" : {
"dispatcherServlet" : [ {
"handler" : "Actuator root web endpoint",
"predicate" : "{GET [/actuator], produces [application/vnd.spring-boot.actuator.v3+json || application/vnd.spring-boot.actuator.v2+json || application/json]}",
"details" : {
"handlerMethod" : {
"className" : "org.springframework.boot.actuate.endpoint.web.servlet.WebMvcEndpointHandlerMapping.WebMvcLinksHandler",
"name" : "links",
"descriptor" : "(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)Ljava/lang/Object;"
},
"requestMappingConditions" : {
"consumes" : [ ],
"headers" : [ ],
"methods" : [ "GET" ],
"params" : [ ],
"patterns" : [ "/actuator" ],
"produces" : [ {
"mediaType" : "application/vnd.spring-boot.actuator.v3+json",
"negated" : false
}, {
"mediaType" : "application/vnd.spring-boot.actuator.v2+json",
"negated" : false
}, {
"mediaType" : "application/json",
"negated" : false
} ]
}
}
}, {
"handler" : "Actuator web endpoint 'mappings'",
"predicate" : "{GET [/actuator/mappings], produces [application/vnd.spring-boot.actuator.v3+json || application/vnd.spring-boot.actuator.v2+json || application/json]}",
"details" : {
"handlerMethod" : {
"className" : "org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping.OperationHandler",
"name" : "handle",
"descriptor" : "(Ljakarta/servlet/http/HttpServletRequest;Ljava/util/Map;)Ljava/lang/Object;"
},
"requestMappingConditions" : {
"consumes" : [ ],
"headers" : [ ],
"methods" : [ "GET" ],
"params" : [ ],
"patterns" : [ "/actuator/mappings" ],
"produces" : [ {
"mediaType" : "application/vnd.spring-boot.actuator.v3+json",
"negated" : false
}, {
"mediaType" : "application/vnd.spring-boot.actuator.v2+json",
"negated" : false
}, {
"mediaType" : "application/json",
"negated" : false
} ]
}
}
}, {
"handler" : "org.springframework.boot.actuate.autoconfigure.web.mappings.MappingsEndpointServletDocumentationTests$ExampleController#example()",
"predicate" : "{POST [/], params [a!=alpha], headers [X-Custom=Foo], consumes [application/json || !application/xml], produces [text/plain]}",
"details" : {
"handlerMethod" : {
"className" : "org.springframework.boot.actuate.autoconfigure.web.mappings.MappingsEndpointServletDocumentationTests.ExampleController",
"name" : "example",
"descriptor" : "()Ljava/lang/String;"
},
"requestMappingConditions" : {
"consumes" : [ {
"mediaType" : "application/json",
"negated" : false
}, {
"mediaType" : "application/xml",
"negated" : true
} ],
"headers" : [ {
"name" : "X-Custom",
"value" : "Foo",
"negated" : false
} ],
"methods" : [ "POST" ],
"params" : [ {
"name" : "a",
"value" : "alpha",
"negated" : true
} ],
"patterns" : [ "/" ],
"produces" : [ {
"mediaType" : "text/plain",
"negated" : false
} ]
}
}
}, {
"handler" : "ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]]",
"predicate" : "/webjars/**"
}, {
"handler" : "ResourceHttpRequestHandler [classpath [META-INF/resources/], classpath [resources/], classpath [static/], classpath [public/], ServletContext [/]]",
"predicate" : "/**"
} ]
},
"servletFilters" : [ {
"servletNameMappings" : [ ],
"urlPatternMappings" : [ "/*" ],
"name" : "requestContextFilter",
"className" : "org.springframework.boot.web.servlet.filter.OrderedRequestContextFilter"
}, {
"servletNameMappings" : [ ],
"urlPatternMappings" : [ "/*" ],
"name" : "formContentFilter",
"className" : "org.springframework.boot.web.servlet.filter.OrderedFormContentFilter"
} ],
"servlets" : [ {
"mappings" : [ "/" ],
"name" : "dispatcherServlet",
"className" : "org.springframework.web.servlet.DispatcherServlet"
} ]
}
}
}
}
响应结构
响应包含应用程序映射的详细信息。 响应中的项目取决于 Web 应用程序的类型(响应式或基于 Servlet)。 下表描述了响应中常见元素的结构:
Path | Type | Description |
---|---|---|
|
|
Application contexts keyed by id. |
|
|
Mappings in the context, keyed by mapping type. |
|
|
Dispatcher servlet mappings, if any. |
|
|
Servlet filter mappings, if any. |
|
|
Servlet mappings, if any. |
|
|
Dispatcher handler mappings, if any. |
|
|
Id of the parent application context, if any. |
contexts.*.mappings
中可能找到的条目在以下章节中描述。
Dispatcher Servlets 响应结构
使用 Spring MVC 时,响应包含 contexts.*.mappings.dispatcherServlets
下任何 DispatcherServlet
请求映射的详细信息。
下表描述了响应此部分的结构:
Path | Type | Description |
---|---|---|
|
|
Dispatcher servlet mappings, if any, keyed by dispatcher servlet bean name. |
|
|
Additional implementation-specific details about the mapping. Optional. |
|
|
Handler for the mapping. |
|
|
Predicate for the mapping. |
|
|
Details of the method, if any, that will handle requests to this mapping. |
|
|
Fully qualified name of the class of the method. |
|
|
Name of the method. |
|
|
Descriptor of the method as specified in the Java Language Specification. |
|
|
Details of the request mapping conditions. |
|
|
Details of the consumes condition |
|
|
Consumed media type. |
|
|
Whether the media type is negated. |
|
|
Details of the headers condition. |
|
|
Name of the header. |
|
|
Required value of the header, if any. |
|
|
Whether the value is negated. |
|
|
HTTP methods that are handled. |
|
|
Details of the params condition. |
|
|
Name of the parameter. |
|
|
Required value of the parameter, if any. |
|
|
Whether the value is negated. |
|
|
Patterns identifying the paths handled by the mapping. |
|
|
Details of the produces condition. |
|
|
Produced media type. |
|
|
Whether the media type is negated. |
Servlets 响应结构
使用 Servlet 堆栈时,响应包含 contexts.*.mappings.servlets
下任何 Servlet
映射的详细信息。
下表描述了响应此部分的结构:
Path | Type | Description |
---|---|---|
|
|
Mappings of the servlet. |
|
|
Name of the servlet. |
|
|
Class name of the servlet |
Servlet Filters 响应结构
使用 Servlet 堆栈时,响应包含 contexts.*.mappings.servletFilters
下任何 Filter
映射的详细信息。
下表描述了响应此部分的结构:
Path | Type | Description |
---|---|---|
|
|
Names of the servlets to which the filter is mapped. |
|
|
URL pattern to which the filter is mapped. |
|
|
Name of the filter. |
|
|
Class name of the filter |
Dispatcher Handlers 响应结构
使用 Spring WebFlux 时,响应包含 contexts.*.mappings.dispatcherHandlers
下任何 DispatcherHandler
请求映射的详细信息。
下表描述了响应此部分的结构:
Path | Type | Description |
---|---|---|
|
|
Dispatcher handler mappings, if any, keyed by dispatcher handler bean name. |
|
|
Additional implementation-specific details about the mapping. Optional. |
|
|
Handler for the mapping. |
|
|
Predicate for the mapping. |
|
|
Details of the request mapping conditions. |
|
|
Details of the consumes condition |
|
|
Consumed media type. |
|
|
Whether the media type is negated. |
|
|
Details of the headers condition. |
|
|
Name of the header. |
|
|
Required value of the header, if any. |
|
|
Whether the value is negated. |
|
|
HTTP methods that are handled. |
|
|
Details of the params condition. |
|
|
Name of the parameter. |
|
|
Required value of the parameter, if any. |
|
|
Whether the value is negated. |
|
|
Patterns identifying the paths handled by the mapping. |
|
|
Details of the produces condition. |
|
|
Produced media type. |
|
|
Whether the media type is negated. |
|
|
Details of the method, if any, that will handle requests to this mapping. |
|
|
Fully qualified name of the class of the method. |
|
|
Name of the method. |
|
|
Descriptor of the method as specified in the Java Language Specification. |
|
|
Details of the function, if any, that will handle requests to this mapping. |
|
|
Fully qualified name of the class of the function. |