在SpringMVC架构中,当要把后台比较多的数据提交到后台时,这是用表单提交最为方便,只要把表单项中的所有项的id设置成实体类属性名就可以
<form id="gridForm" method="post">
<input id="gridpowerid" name="id" type="hidden" value="${gridinfo.id}" />
<input id="girdCode" name="girdCode" type="hidden" value="${gridinfo.girdCode}" />
<input id="villageCode" name="villageCode" type="hidden" value="${gridinfo.villageCode}" />
<input id="townCode" name="townCode" type="hidden" value="${gridinfo.townCode}" />
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr class="list_tr2">
<td align="right" width="20%"><h3>街镇名称:</h3></td>
<td align="left" width="20%">
<input id="townname" name="townName" type="hidden" value="${gridinfo.townName}"/>
<span>${gridinfo.townName}</span>
</td>
<td align="right" width="20%"><h3>村居名称:</h3></td>
<td align="left" width="20%">
<input id="villagename" name="villageName" type="hidden" value="${gridinfo.villageName}"/>
${gridinfo.villageName}
</td>
</tr>
<tr class="list_tr2">
<td align="right"><h3>网格名称:</h3></td>
<td align="left">
<input id="gridname" name="gridName" type="hidden" value="${gridinfo.gridName}"/>
${gridinfo.gridName}
</td>
<td align="right"><h3>网格别名:</h3></td>
<td align="left">
<input id="griddiaplayname" name="displayName" type="text" value="岳阳同乐居委"/>
</td>
</tr>
然后在jsp 中用$("#gridForm").form("submit", {
url: '/grid/savegridpower.ajax',
async:false,
success:function(data){
alert("保存成功!");
$("#edit").fadeOut(1000);
window.location.href = window.location.href;
}
});
相关联的实体类部分代码
@Id
@Column(name = "ST_ID", unique = true, nullable = false, length = 50)
@GeneratedValue(generator = "idGenerator")
@GenericGenerator(name = "idGenerator", strategy = "uuid")
private String id;
@Column(name = "ST_GRID_CODE", nullable = false, length = 32)
private String girdCode;
@Column(name = "ST_GRID_NAME", nullable = false, length = 64)
private String gridName;
@Column(name = "ST_DISPLAY_NAME", nullable = true, length = 100)
private String displayName;
@Column(name = "ST_TOWN_CODE", nullable = false, length = 32)
private String townCode;
@Column(name = "ST_TOWN_NAME", nullable = false, length = 64)
private String townName;
响应的控制类 其中SaveGridPower方法 中的参数GridBasicBo gridbo直接接受前台id为其属性的value
@Controller
@RequestMapping("/grid")
public class GridBasicController {
@RequestMapping("/savegridpower.ajax")
public void saveGridPower(HttpServletRequest request,HttpServletResponse response,
Map<String, Object> model,
GridBasicBo gridbo) {
userService.saveGridPowerInfo(gridbo);
System.out.println("success");
}
}
若JSP面,web.xml配置都是UTF-8, 这时看下你表单提交时的方法method 是否是post ,若不是post,则会出现乱码问题,