博客
关于我
将对象转换为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.硒.拖放错误“AttributeError:move_to 需要 WebElement“
查看>>
Python内置函数详解
查看>>
Python/Kivy:从一个类调用函数到另一个类并在 Python 中显示小部件
查看>>
Python/Kivy:我可以在双击标签时调用函数吗
查看>>
python内置函数5-frozenset()
查看>>
Python/Plotly:如何使用要显示的信息自定义悬停模板?
查看>>
Python/Selenium - 无法单击 www.instagram.com 上的“接受 cookie“按钮
查看>>
Python内置函数(35)——next
查看>>
python写入mysql
查看>>
python写入csv老是乱码或者各种不好
查看>>
Python内置函数
查看>>
Python2 安装MySQLdb库
查看>>
Python2 已终结,入手Python 3,你需要这30个技巧
查看>>
python写下拉列表在excel,无法使用python获取Excel下拉列表(组合框)值
查看>>
python2.7安装
查看>>
Python2.7安装ncmbot时提示:Microsoft Visual C++9.0 is required
查看>>
PYTHON2.Git.1
查看>>
python20181211
查看>>