我有一个表格(与Spring pojos没有联系),上面有问题和答案。
我想检索一个只包含键值的字符串,如Q1=A1_3&Q2=A2_1
等。我使用 Spring @RequestBody
注释来做到这一点。
问题是,如果我在表单中放置一个隐藏字段("代码"),我将在此字符串的末尾获得其值,并且我不想将问答键值与隐藏字段值混合。
这是我的 JSP:
<form name="pollform" method="post" action="1/submitpoll.do">
<input type="hidden" name="code" value="C1"></input>
<h4>T1Q1. How do you blabla?</h4>
<input type="radio" name="Q1" value="A1_1">Very Good</input><br/>
<input type="radio" name="Q1" value="A1_2">Could be better</input><br/>
<input type="radio" name="Q1" value="A1_3">Bleah.</input><br/>
<h4>T1Q2. Are you even bliblibli?</h4>
<input type="radio" name="Q2" value="A2_1">Yes sure</input><br/>
<input type="radio" name="Q2" value="A2_2">Not everytime</input><br/>
<input type="radio" name="Q2" value="A2_3">Never</input><br/>
<input type="submit" value="Submit"/>
</form>
这样,在我的控制器中使用@RequestBody
,我会得到类似Q1=A1_2&Q2=A2_3&code=C1
的东西(这不是我想要的,因为我稍后必须在 HashMap 中转换结果字符串)。
那么,如何仅获取表单的问题键值,不包括隐藏的输入值?我应该使用 jstl 还是其他东西?
如果你需要问答对的映射和隐藏的代码参数,我建议引入模型对象,它将包含代码和映射,让弹簧为你做映射。查看此示例。控制器可以保存联系人详细信息的地图,类似于您的问题答案地图。