Java 在HandlerInterceptorAdapter中从我的控制器获取路径模板
目前我正在从Jersey迁移到Spring MVC,需要提供相同的行为和功能 在旧的情况下,我们有一个Jersey ContainerRequestFilter,用于注册普罗米修斯度量。度量包含资源方法的路径模板。 例如: 我的资源方法:Java 在HandlerInterceptorAdapter中从我的控制器获取路径模板,java,spring-boot,spring-mvc,jersey,Java,Spring Boot,Spring Mvc,Jersey,目前我正在从Jersey迁移到Spring MVC,需要提供相同的行为和功能 在旧的情况下,我们有一个Jersey ContainerRequestFilter,用于注册普罗米修斯度量。度量包含资源方法的路径模板。 例如: 我的资源方法: @GET @Path("/some/path/{id}") public void myEndpointMethod() { ... } 因此,在ContainerRequestFilter中,我们使用containerRequest.getUriInfo(
@GET
@Path("/some/path/{id}")
public void myEndpointMethod() {
...
}
因此,在ContainerRequestFilter中,我们使用containerRequest.getUriInfo().getMatchedTemplates()检索路径模板“/some/path/{id}”
代码>
在新的情况下,我创建了一个HandlerInterceptorAdapter
,但是我找不到一种方法来检索我的rest控制器中定义的相同路径模板
我的问题是:如何在HandlerInterceptorAdapter
中检索路径模板
明确地说,我不想获取requestUri(“/some/path/aa-bb-234”
),而是获取匹配的端点模式(“/some/path/{id}”
)
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
String path = (String)request.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE);
System.out.println(path);
super.postHandle(request, response, handler, modelAndView);
}