java新建json 数组_Java创建JSON对象

Java创建JSON对象

private void getJson(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

PrintWriter out=response.getWriter();//servlet的输出流,在页面可以直接显示和解析

//response顾名思义就是服务器对浏览器的响应,PrintWriter它的实例就是向前端的JSP页面输出结果;

//比如out.print("Hello World"),在JSP页面就会有Hello World.

//从HttpServletResponse中get一个PrintWriter,

//打个通俗的比方就是通过HttpServletResponse对象得到一支笔,然后就可以用out.print()方法在网页上写任何你想显示的内容。

//通过PrintWrite,以流方式输出html,返回给客户端,显示在IE上。

//取一个响应客户端的流对象

//获取PrintWriter流,用来在客户端输出。

//当一个Servlet响应的时候将响应信息通过out对象输出到网页上,当响应结束时它自动被关闭。所以也可以理解为:

//调用response.getWriter()这个对象的同时获得了网页的画笔,这时就可以通过这个画笔在网页上画任何想要显示的东西

JSONObject resultJson=new JSONObject(); //JSONObject是对象形式

JSONArray jsonArray=new JSONArray();    //JSONArray是数组形式

JSONObject jsonObject1=new JSONObject();

jsonObject1.put("name", "张三");

jsonObject1.put("age", 22);

JSONObject scoreObject1=new JSONObject();

scoreObject1.put("chinese", 90);

scoreObject1.put("math", 100);

scoreObject1.put("english", 80);

jsonObject1.put("score", scoreObject1);

JSONObject jsonObject2=new JSONObject();

jsonObject2.put("name", "李四");

jsonObject2.put("age", 23);

JSONObject scoreObject2=new JSONObject();

scoreObject2.put("chinese", 70);

scoreObject2.put("math", 90);

scoreObject2.put("english", 90);

jsonObject2.put("score", scoreObject2);

JSONObject jsonObject3=new JSONObject();

jsonObject3.put("name", "王五");

jsonObject3.put("age", 24);

JSONObject scoreObject3=new JSONObject();

scoreObject3.put("chinese", 80);

scoreObject3.put("math", 60);

scoreObject3.put("english", 90);

jsonObject3.put("score", scoreObject3);

jsonArray.add(jsonObject1);

jsonArray.add(jsonObject2);

jsonArray.add(jsonObject3);

resultJson.put("students", jsonArray);

out.println(resultJson);

out.flush(); //立即将缓冲区的数据输出到接收方

out.close(); //关闭输出流

}

要将Java中的JSON字符串转换为List列表,可以使用fastjson库的JSONArray类中的parseArray方法。首先,需要在代码中引入fastjson的jar包,然后按照下面的步骤进行操作: 1. 新建一个实体类,根据JSON数组的字段定义实体类的属性。可以使用@Data注解来自动生成getter和setter方法,使代码更加简洁。以下是一个示例实体类的代码: ```java import lombok.Data; import java.io.Serializable; @Data public class ImageInfoVO implements Serializable { private static final long serialVersionUID = 1L; private Integer artifactCount; private String creationTime; private Integer id; private String name; private Integer projectId; private Integer pullCount; private String updateTime; } ``` 2. 使用JSONArray类的parseArray方法将JSON字符串转换为List列表。在调用parseArray方法时,需要传入JSON字符串和实体类的class类型作为参数。以下是一个示例代码: ```java import com.alibaba.fastjson.JSONArray; import java.util.List; String res = "[\n" + " {\n" + " \"artifact_count\": 3,\n" + " \"creation_time\": \"2022-04-22T08:13:41.746Z\",\n" + " \"id\": 30,\n" + " \"name\": \"base/statistic-service-base\",\n" + " \"project_id\": 2,\n" + " \"pull_count\": 0,\n" + " \"update_time\": \"2022-04-22T08:13:41.746Z\"\n" + " },\n" + " {\n" + " \"artifact_count\": 1,\n" + " \"creation_time\": \"2022-04-22T08:12:19.763Z\",\n" + " \"id\": 29,\n" + " \"name\": \"base/tomcat_ra\",\n" + " \"project_id\": 2,\n" + " \"pull_count\": 0,\n" + " \"update_time\": \"2022-04-22T08:12:19.763Z\"\n" + " }]"; List<ImageInfoVO> jsonList = JSONArray.parseArray(res, ImageInfoVO.class); ``` 这样,你就可以将Java中的JSON字符串成功转换为List列表了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值