博客
关于我
将对象转换为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 优化提速的 8 个小技巧
查看>>
Python 余弦相似度与皮尔逊相关系数 计算
查看>>
python 使用execjs 报编码错误解决办法,UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 145: il
查看>>
python 使用filetype校验文件
查看>>
Python 使用flush函数将缓冲区数据立即写磁盘
查看>>
python 使用in判断不准确,in不好使
查看>>
Python 使用pandas 进行查询和统计详解
查看>>
Redis 配置文件redis.conf详细解释
查看>>
python网络爬虫(2)——scrapy框架的基础使用
查看>>
Python 使用哈希函数用于加密
查看>>
Python 依赖管理的革新——Poetry 深度解析
查看>>
python 保留精度及增加去除数字的千位分隔符(金额化数字)
查看>>
python 倒计时 9,8,7,。。。。。。0
查看>>
Python 入门开发学习笔记之数据的增删改查
查看>>
Python 入门教程(2)搭建环境 2.4、VSCode配置Node.js运行环境
查看>>
Python 内存管理
查看>>
Python 内嵌函数:它们有什么用处?
查看>>
python 利用pyttsx3文字转语音
查看>>
Python 基础语法:基本数据类型(一)
查看>>