如何使用Spring webmvc提交表单中的Web表单变量?

时间:2013-02-07 05:19:53

标签: spring spring-mvc

我一直在使用@ModelAttribute将我的表单变量“强制转换”为一个类(表示数据库中的表),这非常有用。

但是我正在处理另一种形式,我需要在表单中有一个不代表数据库中数据的隐藏字段。我只是将它传递给我的代码的业务逻辑部分。

如何在我的函数中访问此隐藏字段?我不想编辑我的表类来添加这个新字段,因为这看起来很糟糕。而且我知道我可以创建一个新类,它只包含我表单中的所有字段,但我不确定这是否是最好的方法。

谢谢! :)

这些是我现在所拥有的(只有表格字段,但有效)。

我的jsp页面

<form:form modelAttribute="fab" method="post" action="SaveEventRegistration.html">

我接受表单提交的java代码

@RequestMapping("/SaveEventRegistration")
public ModelAndView saveEventRegistration(@ModelAttribute Fab fab) {
        System.out.println(fab.getStudentId());

1 个答案:

答案 0 :(得分:1)

您无需更改表及其pojo。要获取在ModelAttribute对象中无法绑定的隐藏字段值,您只需使用html输入标记在表单内的jsp中声明该隐藏字段,并使其隐藏为所需值。

现在在控制器功能中,您需要有一个参数HttpServletRequest request,并使用request.getParameter("hdParam")获取隐藏字段的值,名称为 hdParam

我希望这会对你有所帮助。欢呼声。