jsonConfig详细使用
一,setCycleDetectionStrategy 防止自包含
- publicstaticvoidtestCycleObject(){
- CycleObjectobject=newCycleObject();
- object.setMemberId("yajuntest");
- object.setSex("male");
- JsonConfigjsonConfig=newJsonConfig();
- jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
-
- JSONObjectjson=JSONObject.fromObject(object,jsonConfig);
- System.out.println(json);
- }
-
- publicstaticvoidmain(String[]args){
- JsonTest.testCycleObject();
- }
其中 CycleObject.java是我自己写的一个类:
- publicclassCycleObject{
-
- privateStringmemberId;
- privateStringsex;
- privateCycleObjectme=this;
- ……
- }
输出 {"sex":"male","memberId":"yajuntest","me":null}
?
二,setExcludes:排除需要序列化成json的属性
- publicstaticvoidtestExcludeProperites(){
- Stringstr="{'string':'JSON','integer':1,'double':2.0,'boolean':true}";
- JsonConfigjsonConfig=newJsonConfig();
- jsonConfig.setExcludes(newString[]{"double","boolean"});
- JSONObjectjsonObject=(JSONObject)JSONSerializer.toJSON(str,jsonConfig);
- System.out.println(jsonObject.getString("string"));
- System.out.println(jsonObject.getInt("integer"));
- System.out.println(jsonObject.has("double"));
- System.out.println(jsonObject.has("boolean"));
- }
-
- publicstaticvoidmain(String[]args){
- JsonTest.testExcludeProperites();
- }
?
?
三,setIgnoreDefaultExcludes
- @SuppressWarnings("unchecked")
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。