Spring 3 MVC:没有注释但使用 XML 的应用程序
我正在尝试使用 spring 3 MVC 开发应用程序,而不使用注释。 我这样做有几个原因(我喜欢中央配置位置,我不想将 HTTP 特定信息放入我的控制器中,我确实喜欢 XML 文件,并且我的 IDE (intellij IDEA) 对它有很好的支持)。
首先,我需要 URL 到控制器的映射。可以使用 BeanNameUrlHandlerMapping 来实现。尽管此方法已从 3.0 文档中删除(“被注释废弃”),但它仍然有效。
然后我需要将 GET 参数映射到一些具有属性的 bean。在struts中他们默认有它:( 我可以使用BaseCommandController
。它已被弃用,但我可以使用 @SuppressWarnings 来摆脱丑陋的消息。 bindAndValidate
将在其后填充命令对象。
至少我需要映射路径变量(来自 uri 模板)以使我的 URL 可读。 我在这里迷路了。 看:https://jira.springsource.org/browse/SPR-5757
BaseCommandController
仅适用于 GET/POST。 我可以使用 UriTemplate
从请求中获取地图。但是 bindAndValidate
接受 HttpServletRequest
并且我无法向其添加参数:地图是只读的。我可以装饰它,但是……太多的技巧!
对于如此简单的需求来说,有太多的技巧。 Hacks、已弃用的类和 3.0 中未记录的 BaseCommandController。
是否可以使用 spring mvc 3.0 制作不带注释的应用程序? 或者我应该为 MVC 使用其他东西(比如 struts-2)?
I am trying to develop application with spring 3 MVC not using annotations.
I have several reasons for it (I like central configuration place, I do not want to put HTTP-specific info in my controller, I do like XML files and my IDE (intellij IDEA) has good support for it).
At first, I need URL-TO-Controller mapping. It can be achieved using BeanNameUrlHandlerMapping
. Although this method was eliminated from 3.0 documentation ("obsoleted by annotations") but it still works.
Then I need to map GET parameters to some bean with properties. In struts they have it by default:(
I can use BaseCommandController
. It is deprecated but I can use @SuppressWarnings
to get rid of ugly message.bindAndValidate
will populate command object after it.
At least I need to map path variables (from uri templates) to make my URLs readable.
And I am lost here.
Look: https://jira.springsource.org/browse/SPR-5757
BaseCommandController
works only with GET/POST.
I can fetch map from request using UriTemplate
. But bindAndValidate
accepts HttpServletRequest
and I cannot add parameters to it: map is read-only. I can decorate it but... too many hacks!
Too many hacks for so simple needs. Hacks, deprecated classes and BaseCommandController
which is undocumented in 3.0.
Is it possible to make app using spring mvc 3.0 w/o of annotations?
Or I should use something else (like struts-2) for MVC?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论