我的表单看起来像这样: cat1 [int field] cat2 [int field] cat3 [int field]
事实是我的类别每次都不同。 我如何在我的处理程序中处理这个?
不知道我应该如何设置我的getter / setter
继承我的jsp:
<jsp:useBean id="formHandler" scope="page" class="com.pipo.EditStatusMappingHandler"><%--
--%><jsp:setProperty name="formHandler" property="*" /><%--
--%></jsp:useBean>
<form action="jsp/form/mapStatus.jsp" method="POST" name='categoryForm'>
<ul>
<foreach collection="<%= categorySet %>" type="Category" name="itCategory" >
<li>
<label for="<%= itCategory.getId() %>"><%= itCategory.getName(userLang) %></label>
<input type="text" name="<%= itCategory.getId() %>" id="<%= itCategory.getId() %>"/>
</li>
</foreach>
</ul>
<div class="modal-buttons buttons">
<input style="text-align:right;" class='formButton mainButton' type="submit"/>
</form>
我不知道在我的处理程序中输入什么来获取输入名称=&lt;%= itCategory.getId()%&gt;
答案 0 :(得分:1)
最好的方法是在表单对象上使用反射来了解类别字段并调用相应的操作。
答案 1 :(得分:1)
大多数Java Web框架都支持映射属性(即getCategoryValue(String categoryName)
/ setCategoryValue(String categoryName, Integer value)
)或对表单bean / action bean内的映射进行直接读写访问。
如果不了解您正在使用的框架以及“处理程序”的含义,则很难给出更准确的答案。“
答案 2 :(得分:1)
如果您使用Map<String, Data>
,则会为您定义getter和setter。
Map<String, Data> map = new LinkedHashMap<String, Data>();
// set values.
map.put("field1", data1);
map.put("field2", data2);
// get values.
Data dataA = map.get("field1");
Data dataB = map.get("field2");