1. 首页
  2. 软件开发
  3. JAVA
  4. JSON转对象,对象转JSON

JSON转对象,对象转JSON

  • 发布于 2024-09-25
  • 1 次阅读

需要的jar包:

     工具包为阿里fastjson
     <dependency>
         <groupId>com.alibaba</groupId>
         <artifactId>fastjson</artifactId>
         <version>1.2.44</version>
     </dependency>

具体实现DEMO:

        LocalDateTime now = LocalDate.now().atStartOfDay();
        // java.time.LocalDateTime --> java.util.Date
        Date date = Date.from(now.atZone(ZoneId.systemDefault()).toInstant());
        Date date1 = Date.from(now.plusDays(1).atZone(ZoneId.systemDefault()).toInstant());

        ActivityTemplatePO templatePO = new ActivityTemplatePO(1,1,date,date1,"NO", date);
        // 对象 转 JSON对象
        Object toJSON = JSONObject.toJSON(templatePO);
        System.out.println(toJSON);

        // 对象 转 JSON串
        String jsonStr  = JSONObject.toJSONString(templatePO);
        System.out.println(jsonStr);

        // JSON串 转 对象
        ActivityTemplatePO templatePO1 = JSON.parseObject(jsonStr, ActivityTemplatePO.class);
        System.out.println(templatePO1);

        //JSON内容为{"activityTemplateNo":1,"createTime":1568131200,"endTime":1568217600,"id":724,"startTime":1568131200,"status":"NO"}
        JSONObject map=new JSONObject();
        map.put("activityTemplateNo", "1");
        map.put("createTime", "1568131200");
        map.put("startTime", "1568217600");
        map.put("endTime", "1568131200");
        map.put("id", "724");
        map.put("status", "NO");
        // JSON 转 对象
        ActivityTemplatePO toJavaObject = JSON.toJavaObject(map, ActivityTemplatePO.class);
        System.out.println(toJavaObject.toString());

        // JSON 转 数组
        String jsonStr2 = "[{\"activityTemplateNo\":\"1\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"1\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
                ",{\"activityTemplateNo\":\"2\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"2\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
                ",{\"activityTemplateNo\":\"3\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"3\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
                ",{\"activityTemplateNo\":\"4\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"4\",\"startTime\":\"1568131200\",\"status\":\"NO\"}]";
        JSONArray templateDetails = JSONObject.parseArray(jsonStr2);
        //将JSON数组转换成数组对象
        List<ActivityTemplatePO> list = templateDetails.toJavaObject(templateDetails, List.class);
        List list2 = JSON.toJavaObject(templateDetails, List.class);
        if (list.size() > 0) {
            for (int i = 0; i < list.size(); i++) {
                System.out.println(list.get(i));
            }
        }
        System.out.println(list2);

    }

原文链接: https://onlyou.blog.csdn.net//article/details/100745450