关于jquery保存form及转换成bean对象
使用jquery-1.10.2.js,保存表单时序列化之后,发现yyyy-MM-dd HH:mm:ss格式的日期,序列化之后会变成yyyy-MM-dd+HH:mm:ss的格式,其中的空格被替换成了“+”
claimParams=$('#claimInfo').serialize();
后台接收后,因为有些内容需要直接保存明文,因此需要解码一下,并将其中的一些特殊字符替换掉
claimParams=java.net.URLDecoder.decode(claimParams,"UTF-8");claimParams=claimParams.replaceAll("\"",""");claimParams=claimParams.replaceAll("&","\",\"").replaceAll("=","\":\"");claimParams="{\""+claimParams+"\"}";claimParams=claimParams.replaceAll("","<br/>");claimParams=claimParams.replaceAll(""," ");
处理过后,将claimParams字符串转为json对象,再将json对象转为bean,然后直接保存bean对象。
但是因为bean中的日期是timestamp类型,利用jsonobject直接转bean的时候会有问题,因此需要再处理一下
//json转beanString[]formats={"yyyy-MM-dd+HH:mm:ss","yyyy-MM-dd"};JSONUtils.getMorpherRegistry().registerMorpher(newTimestampMorpher(formats));JSONObjectclaimParams_jsonObject=JSONObject.fromObject(claimParams);Claimclaim=(Claim)JSONObject.toBean(claimParams_jsonObject,Claim.class);
这样就可以直接保存对象了。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。