博客
关于我
将对象转换为JSON字符串
阅读量:179 次
发布时间:2019-02-28

本文共 4945 字,大约阅读时间需要 16 分钟。

一、引包

com.alibaba
fastjson
1.2.31

二、测试方法——将对象转化为JSON字符串

@Testpublic void objectToJSON() {    // 前端的请求    ReqDiffObjRuleSet reqDiffObjRuleSet = new ReqDiffObjRuleSet();    reqDiffObjRuleSet.setObjectName("电视");    reqDiffObjRuleSet.setPipeLineId("1");    reqDiffObjRuleSet.setProductFamilyid("1");    reqDiffObjRuleSet.setRelationObjName("网线");        // 前端请求中的复杂变量    DiffObjRuleSet diffObjRuleSet = new DiffObjRuleSet();        // 封装复杂变量的对象    RelationObject relationObject = new RelationObject();    relationObject.setCompareResultRule(1);    relationObject.setInvalidDataMode(1);    relationObject.setMulDataMode(1);    relationObject.setPipelineId("1");    relationObject.setProductFamilyId("1");    relationObject.setRelationObjectName("a");    relationObject.setRelationType(1);    relationObject.setUpdateRule(1);        // 封装复杂变量的第1个列表    List
diffObjectAssoRuleSetList = new ArrayList<>(); DiffObjectAssoRuleSet diffObjectAssoRuleSet = new DiffObjectAssoRuleSet(); diffObjectAssoRuleSet.setAssoObjectCompareMode(1); diffObjectAssoRuleSet.setPipelineId("1"); diffObjectAssoRuleSet.setPriority(1); diffObjectAssoRuleSet.setProductFamilyId("1"); diffObjectAssoRuleSet.setAssoObjectCompareFieldName("a"); diffObjectAssoRuleSet.setAssoObjectName("a"); diffObjectAssoRuleSet.setSourceAttributeName("a"); diffObjectAssoRuleSet.setSourceObjectName("a"); diffObjectAssoRuleSet.setRuleName("test"); diffObjectAssoRuleSetList.add(diffObjectAssoRuleSet); // 封装复杂变量的第2个列表 List
diffObjectUpdateRuleSetList = new ArrayList<>(); DiffObjectUpdateRuleSet diffObjectUpdateRuleSet = new DiffObjectUpdateRuleSet(); diffObjectUpdateRuleSet.setPipelineId("1"); diffObjectUpdateRuleSet.setProductFamilyId("1"); diffObjectUpdateRuleSet.setInputAttributeName("a"); diffObjectUpdateRuleSet.setInputObjectName("a"); diffObjectUpdateRuleSet.setTargetAttributeName("a"); diffObjectUpdateRuleSet.setTargetObjectName("a"); diffObjectUpdateRuleSetList.add(diffObjectUpdateRuleSet); // 复杂变量中的对象和列表设置 diffObjRuleSet.setRelationObject(relationObject); diffObjRuleSet.setDiffObjectUpdateRuleSetList(diffObjectUpdateRuleSetList); diffObjRuleSet.setDiffObjectAssoRuleSetList(diffObjectAssoRuleSetList); // 设置前端请求中的复杂变量 reqDiffObjRuleSet.setDiffObjRuleSet(diffObjRuleSet); // 对象转字符串 String s = JSON.toJSONString(reqDiffObjRuleSet); System.out.println(s);}

三、运行结果如下

{    "diffObjRuleSet": {        "diffObjectAssoRuleSetList": [            {                "assoObjectCompareFieldName": "a",                "assoObjectCompareMode": 1,                "assoObjectName": "a",                "pipelineId": "1",                "priority": 1,                "productFamilyId": "1",                "ruleName": "test",                "sourceAttributeName": "a",                "sourceObjectName": "a"            }        ],        "diffObjectUpdateRuleSetList": [            {                "inputAttributeName": "a",                "inputObjectName": "a",                "pipelineId": "1",                "productFamilyId": "1",                "targetAttributeName": "a",                "targetObjectName": "a"            }        ],        "relationObject": {            "compareResultRule": 1,            "invalidDataMode": 1,            "mulDataMode": 1,            "pipelineId": "1",            "productFamilyId": "1",            "relationObjectName": "a",            "relationType": 1,            "updateRule": 1        }    },    "objectName": "电视",    "pipeLineId": "1",    "productFamilyid": "1",    "relationObjName": "网线"}

四、将上面结果转化为标准格式

五、控制器

@PostMapping("/conf")public void diffObjAssoObjConf(@RequestBody ReqDiffObjRuleSet reqDiffObjRuleSet) {    Result result = new Result();    System.out.println(reqDiffObjRuleSet);}

六、PostMan测试

七、控制台打印

ReqDiffObjRuleSet(diffObjRuleSet=DiffObjRuleSet(relationObject=RelationObject(relationObjectCode=null, relationObjectName=a, relationRuleName=null, relationType=1, compareResultRule=1, mulDataMode=1, invalidDataMode=1, updateRule=1, comparisonGroup=null, pipelineId=1, objectCode=null, productFamilyId=1), diffObjectAssoRuleSetList=[DiffObjectAssoRuleSet(ruleId=null, ruleCode=null, ruleName=test, sourceObjectCode=null, sourceObjectName=a, sourceAttributeCode=null, sourceAttributeName=a, assoObjectCode=null, assoObjectName=a, assoObjectCompareFieldCode=null, assoObjectCompareFieldName=a, assoObjectCompareMode=1, priority=1, pipelineId=1, productFamilyId=1)], diffObjectUpdateRuleSetList=[DiffObjectUpdateRuleSet(ruleId=null, ruleCode=null, ruleName=null, targetObjectCode=null, targetObjectName=a, targetAttributeCode=null, targetAttributeName=a, inputObjectCode=null, inputObjectName=a, inputAttributeCode=null, inputAttributeName=a, pipelineId=1, productFamilyId=1)]), pipeLineId=1, productFamilyid=1, objectName=电视, relationObjName=网线

转载地址:http://fcqj.baihongyu.com/

你可能感兴趣的文章
Python 中的装饰器是什么?
查看>>
Python 中的装饰器是如何工作的,有哪些实际应用场景?
查看>>
python读excel
查看>>
Python 中读取 CSV 文件-ChatGPT4o作答
查看>>
python请求html_使用Python请求获取HTML?
查看>>
Python 之匿名函数和偏函数
查看>>
python 之栈的实现
查看>>
python语音播放
查看>>
python语言:装饰器原理
查看>>
Python 交互式数据可视化详解
查看>>
python语言有哪些优点和缺点_Python有哪些优缺点,你了解吗?
查看>>
Python 从入门到精通:30天速成教程到底有多狠?你能坚持下来吗?
查看>>
Python 从数据库中存储和检索密码的最安全方法
查看>>
Python语言及其应用 - 知识点遍历
查看>>
Python 优化提速的 8 个小技巧
查看>>
Python 余弦相似度与皮尔逊相关系数 计算
查看>>
python 使用execjs 报编码错误解决办法,UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 145: il
查看>>
python 使用filetype校验文件
查看>>
Python 使用flush函数将缓冲区数据立即写磁盘
查看>>
python 使用in判断不准确,in不好使
查看>>