最近,我一直在研究构建Web应用程序的新框架。为此,我想尝试一下Spring MVC。在评估框架的许多参数中,一个是我不希望绑定到与框架相关联的标签库以使用HTTP请求参数 - > Java bean翻译。 Spring MVC文档反复提到可以只用JSTL和没有Spring标签来查看相关的东西,但是,我还没有找到一种方法来获取Request-to-Bean转换功能[SimpleFormController
]到没有Spring标签的工作。
截至目前,唯一的方法似乎是逐个提取请求参数并设置为我的bean。有没有办法使用框架相关标签执行此翻译?
感谢您的投入!
答案 0 :(得分:2)
我使用没有Velocity模板的Spring Web MVC(非JSP模板)。要回答您的问题,您需要了解Spring如何执行数据绑定。基本上,它都是您给出输入元素的名称。 E.g
<input name="properytOne" value="1" type="hidden">
<input name="properytTwo" value="2" type="hidden">
<input name="rich.property3" value="3" type="hidden">
会将值绑定到像这样的对象
class CommandOne {
private String propertyOne;
private String popertyTwo;
private CommandTwo rich;
// Getters and setters
}
class CommandTwo {
private String propertyThree;
// Getters and setters
}
您还必须确保实例化您的命令对象,但这将在您的SimpleFormController中处理。
答案 1 :(得分:1)
Spring标签是完全可选的。
阅读Spring Reference Document的第15,16和17章您可以使用注释来检索控制器的请求参数(参见第15.3节)。
答案 2 :(得分:0)
根据我的理解,您要实现的是将表单绑定到Bean类,这在JSF中非常好地实现。 JSF在组件架构上工作,非常容易入手,而且它有许多可用的组件,如primefaces,omnifaces,icefaces,openfaces等。自行设计组件的可重用性可以帮助你在特定项目中做很多事情。试着给JSF一个机会。谢谢,希望这很有帮助。