Servlet中如何將json物件轉化為Java中的自定義物件
阿新 • • 發佈:2019-01-30
前段ajax
後臺servlet$("#form1").submit(function() { var cname = $("input[name=cname]").val(); var sup_company = $("select[name=select]").val(); var ctype = $("input[name=ctype]").val(); if(ctype=='國企'){ ctype=1; }else{ ctype=0; } var cadress = $("input[name=cadress]").val(); var ctel = $("input[name=ctel]").val(); var curl = $("input[name=curl]").val(); $.ajax({ url : "companyServlet?method=addCompany", type : "POST", contentType : "application/json;charset=utf-8", data : JSON.stringify({ cname : cname, sup_company : sup_company, ctype : ctype, cadress : cadress, ctel : ctel, curl : curl, status:"1" }), success:function(data){ if(data!=null){ var datas=JSON.parse(data); if(data>0){ alert("新增成功"); } } }, dataType:"json" }); return false; });
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletInputStream inputStream = request.getInputStream(); String json=IOUtils.toString(request.getInputStream()); json=URLDecoder.decode(json,"utf-8"); Gson gson=new Gson(); Company company=gson.fromJson(json, Company.class); int re=companyService.addCompany(company); String data=JSON.toJSONString(re); response.getWriter().print(data); response.getWriter().flush(); }
後臺需要的jar包有fastjson-1.1.32.jar,gson-2.1.jar
這樣就可以將json物件轉化自定義物件了