Bri*_*ent 5 java spring spring-mvc
我正在转换使用 Spring MVC 控制器实现的代码以使用注释构造型 @Controller。除了一个问题外,一切都很好:
给定一个请求/响应,我如何以编程方式处理基于注释的控制器的请求?
以前,(无论实现如何)我可以调用:
controller.handleRequest(request, response)
Run Code Online (Sandbox Code Playgroud)
注释的等价物是什么?我曾假设会有一些(也许是静态的?)实用程序类:
SpringAnnotationBasedControllerUtils.handleRequest(<? extends @Controller> handlerObject, HttpServletRequest request, HttpServletResponse response);
Run Code Online (Sandbox Code Playgroud)
处理将请求映射到@Controller 构造型允许的动态签名的细节,但我找不到这样的东西。
有什么建议?
(请不要评论为什么这是一个坏主意,或者对于“好的”设计来说应该是不必要的,等等。这是正在维护的代码,必须尽可能非侵入性,因此此时无法选择完全重写。 )
谢谢!
您只需调用该对象的方法即可。这是注释驱动控制器的一大好处,您可以只编写代码所需的方法,而不必改变事物的形状以符合接口。因此,只需将控制器 bean 连接到代码中,然后直接调用该方法即可。
或者你是说你想重新发明 Spring 将请求映射到带注释的控制器的机制?如果是这样,请查看 SpringAnnotationMethodHandlerAdapter和DefaultAnnotationHandlerMapping类的源代码。虽然它很复杂 - 带注释的控制器使编写控制器变得更容易,但底层机制并不令人愉快。
| 归档时间: |
|
| 查看次数: |
5350 次 |
| 最近记录: |