弹簧mvc表格处理,不使用弹簧标签

时间:2011-02-25 14:57:45

标签: spring spring-mvc

最近,我一直在研究构建Web应用程序的新框架。为此,我想尝试一下Spring MVC。在评估框架的许多参数中,一个是我不希望绑定到与框架相关联的标签库以使用HTTP请求参数 - > Java bean翻译。 Spring MVC文档反复提到可以只用JSTL和没有Spring标签来查看相关的东西,但是,我还没有找到一种方法来获取Request-to-Bean转换功能[SimpleFormController]到没有Spring标签的工作。

截至目前,唯一的方法似乎是逐个提取请求参数并设置为我的bean。有没有办法使用框架相关标签执行此翻译?

感谢您的投入!

3 个答案:

答案 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一个机会。谢谢,希望这很有帮助。