博客
关于我
将对象转换为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:替换嵌套字典中的值
查看>>
Python:爬取数据出现response.status_code为403解决方法
查看>>
Python:爬取数据出现response.status_code为418解决方法
查看>>
Python:生成“元组集“;来自“元组列表“;不考虑顺序
查看>>
Python:生成具有趋势的随机时间序列数据(例如周期性、指数衰减等)
查看>>
Python:用渐进式数字重命名列表中的重复项而不对列表进行排序
查看>>
Python:矩形参数无效
查看>>
Python:语法进阶
查看>>
Python:调用复制函数时调用 Python 对象时超出了最大递归深度
查看>>
Python:这两个 import 语句有什么区别?
查看>>
Python:通过串口从 Velleman k8090 读取数据
查看>>
python:遍历具有列表值的字典
查看>>
Python:降低精度 pandas 时间戳数据帧
查看>>
python:非阻塞子进程,检查标准输出
查看>>
PythonABC多重继承
查看>>
Pythonargparse中的多个参数
查看>>
Python关于 *args 和 **kwargs 参数的详解(全)
查看>>
Pythonfrozenset散列算法/实现
查看>>