ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

servlet接收解析json数据

2021-06-07 19:57:42  阅读:276  来源: 互联网

标签:name com list json JSONObject import 解析 servlet


一、jar包准备

jar: fastJson / gson

二、前端代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<button id="btn">click</button>
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
 <script type="text/javascript">
 
 $("#btn").click(function(){
	 
	 var list = {"list":[{name:'sf',age:'fs'}]};
	 $.ajax({
		url:"log",
		
		type:'post',
		contentType: 'application/json',
		data: JSON.stringify(list),
		success:function(res){
			console.log(res);
			alert(res);
		}
	 });
 })
 </script>
</body>
</html>

三、工具类

package com.qst.until;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import javax.servlet.ServletInputStream;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

public class JsonUtils {
	

	 public  static JSONArray getJson(InputStreamReader req) {
		 
			JSONObject json = new JSONObject();
			 JSONArray list = new JSONArray();
		        BufferedReader br;
		        String jsonStr = null;
		        String jsonStr2 = null;
		        try {
		            br = new BufferedReader(req);
		            String line = null;
		            StringBuilder sb = new StringBuilder();

		            while ((line = br.readLine()) != null) {
		                sb.append(line);
		            }
		            json= JSONObject.parseObject(sb.toString());
		            jsonStr = JSONObject.toJSONString(json);
		            list = json.getJSONArray("list");
		            jsonStr2 = JSONArray.toJSONString(list);
		        } catch (IOException e) {
		            e.printStackTrace();
		        }
		        return list;
		        
	 }

}

四、servlet代码

package com.qst.servlet;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.JsonObject;
import com.qst.until.JsonUtils;

@WebServlet("/log")
public class log extends HttpServlet {

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);

	}

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		req.setCharacterEncoding("utf-8");
		resp.setCharacterEncoding("utf-8");
		resp.setContentType("text/html;charset=UTF-8");
		String name = null;

		InputStreamReader reader = new InputStreamReader((ServletInputStream) req.getInputStream());

		JSONArray list = JsonUtils.getJson(reader);

		System.out.println("list===============");
		System.out.println(list);
		System.out.println("逐个取出===============");
		for (int i = 0; i < list.size(); i++) {
			JSONObject object = (JSONObject) list.get(i);
			System.out.println("name" + object.getString("name") + "age" + object.getString("age"));
			name = object.getString("name");
		}

		resp.getWriter().write(name);
	}

}

在这里插入图片描述

标签:name,com,list,json,JSONObject,import,解析,servlet
来源: https://blog.csdn.net/weixin_44763595/article/details/117673044

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有