关于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("", "
");    claimParams = claimParams.replaceAll("", " ");

 处理过后,将claimParams字符串转为json对象,再将json对象转为bean,然后直接保存bean对象。

但是因为bean中的日期是timestamp类型,利用jsonobject直接转bean的时候会有问题,因此需要再处理一下

   //json转bean
  String[] formats={"yyyy-MM-dd+HH:mm:ss","yyyy-MM-dd"};  
  JSONUtils.getMorpherRegistry().registerMorpher( new TimestampMorpher(formats) );    
  JSONObject claimParams_jsonObject = JSONObject.fromObject( claimParams );  
  Claim claim = (Claim)JSONObject.toBean( claimParams_jsonObject,Claim.class );

这样就可以直接保存对象了。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:关于jquery保存form及转换成bean对象-创新互联
链接URL:http://abwzjs.com/article/dheidp.html