通过Spring 3 MVC Controller Class中的表单post检索非表单元素值

时间:2013-12-23 09:23:12

标签: spring-mvc http-post

当我提交时:

<form:form action='/controller.do' method='POST'>
<input type='text' value='test' name='myName" />
<input type='submit'/>
</form:form>

如何在不使用表单标签的情况下检索Spring 3 MVC Controller中'myName'的值?

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,您可以在Spring MVC标记库的<input>标记内添加一些纯HTML <form:form>标记。

虽然它可能会起作用,但使用(取决于您的具体情况)可能更好的想法是纯HTML:

<form action='/controller.do' method='POST'>
   <input type='text' value='' name='myName" />
   <input type='submit'/>
</form>

或仅限Spring MVC标记:

<form:form action='/controller.do' method='POST' modelAttribute='fooModelAttribute'>
   <form:input path='myName' />
   <input type='submit'/>
</form>

您可以通过在控制器方法中声明以下参数来检索myName值:

@RequestParam("myName") String myNameVal

或者,您可以声明一个具有myName字段的类,其中包含getter和setter(例如,FooClass)。然后,您可以在控制器中声明以下参数:

FooClass foo

此参数可能包含可选的@ModelAttribute("fooModelAttribute")注释。

有关@RequestParam@ModelAttribute<form:form>的详细信息,请参阅Spring参考。