1. 程式人生 > >Servlet中如何將json物件轉化為Java中的自定義物件

Servlet中如何將json物件轉化為Java中的自定義物件

前段ajax
$("#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;
		});
後臺servlet
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物件轉化自定義物件了