【JAVA基础】JSON转换

发布时间 2023-07-03 11:40:49作者: 舟山婠贞

JSON转换

json字符串与dto转换

public JsonDataJtMdmResultDataDTO receiveinfoMQ(String reqContent) {

        JtMdmMaterialReqDTO jtMdmMaterialReqDTO = new JtMdmMaterialReqDTO();
        List<JsonDataJtMdmResultDataInfosDTO> jsonDataJtMdmResultDataInfoDTOList = new ArrayList<>();
        // try{

        logger.info("集团主数据物料分发"+"时间"+ new Date()  +"内容"+reqContent);

        //String 转json
        jtMdmMaterialReqDTO = JSONObject.parseObject(reqContent,JtMdmMaterialReqDTO.class);

        List<JtMdmMaterialDataInfosDTO> jtMdmMaterialDataInfosDTOList = jtMdmMaterialReqDTO.getDATAINFOS();
        //切片
        List<List<JtMdmMaterialDataInfosDTO>> list = Lists.partition(jtMdmMaterialDataInfosDTOList,5000);
        for (List<JtMdmMaterialDataInfosDTO> jtMdmMaterialDataInfosDTOS : list) {
            List<JtMdmMdMaterial> jtMdmMdMaterialList = new ArrayList<>();
            //报文转JtMdmMdMaterial
            jtMdmMaterialDataInfosDTOS.forEach(jtMdmMaterialDataInfosDTO -> {
                jtMdmMdMaterialList.add(jtMdmMaterialDataInfosDTO.getDATAINFO());
            });

            List<JsonDataJtMdmResultDataInfosDTO> pieceJsonDataJtMdmResultDataInfosDTO = batchProcessing(jtMdmMaterialReqDTO.getUUID(),jtMdmMdMaterialList);
            jsonDataJtMdmResultDataInfoDTOList.addAll(pieceJsonDataJtMdmResultDataInfosDTO);

        }

//        }catch (Exception e){
//            esbCode = "1";
//            esbDesc = e.getMessage();
//
//            logger.info(e.getMessage());
//        }

        JsonDataJtMdmResultDataDTO jsonDataJtMdmResultDataDTO = new JsonDataJtMdmResultDataDTO
                .Builder()
                .setDATAINFOS(jsonDataJtMdmResultDataInfoDTOList)
                .build();

        logger.info(JSONObject.toJSONString(jsonDataJtMdmResultDataDTO));
        return jsonDataJtMdmResultDataDTO;
    }