1、通过form表单发送请求,用action=“请求路径”,这里可以不用传递参数,后端直接可以通过request.getParameterMap()方法获得数据,整个页面刷新。
2、通过form表单发送异步请求,通过ajax用post方式发送,data:$(.classl类名).serialize()方法将表单内容全部传递给后台,后台还是用request.getParameterMap()方法获得数据
3、解析request.getParameterMap()获取的值
HashMap newMap = new HashMap();
Map<String,String[]> map = request.getParameterMap();
for(Iterator iter = map.entrySet().iterator();iter.hasNext();){ //遍历map中的每一对键值对
Map.Entry element = (Map.Entry)iter.next(); //获取一个键值对
Object strKey = element.getKey(); //获取键值对key的值
Object strObj = element.getValue(); //获取键值对value的值
String valueStr="";
for(int i=0;i <value.length;i++){
//System.out.print(value[i]);
valueStr = value[i];
}
if (!strKey.equals("id")&&!strKey.equals("t_name")) { //去除不需要的键值对
newMap.put(strKey,valueStr); //将需要的值放入新的map中遍历一下就ok
}
}
Iterator<Map.Entry<String, String>> it = newMap.entrySet().iterator();
String valueTotal="";
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
if(!valueTotal.equals("")) {
valueTotal+=",";
valueTotal +=entry.getKey()+"='"+entry.getValue()+"'";
}else{
valueTotal +=entry.getKey()+"='"+entry.getValue()+"'";
}
}
//取key和value的键值对,拼成Sql语句
String sql = "update "+t_name+" set "+valueTotal+" where id="+userid; //拼接成修改语句
//System.out.println(sql); //测试语句
jt.update(sql);