码迷,mamicode.com
首页 > Web开发 > 详细

JSON工具类

时间:2016-06-06 23:46:36      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

 1 import java.sql.Timestamp;
 2 import java.util.Collection;
 3 import java.util.Date;
 4 
 5 import org.soul.util.json.JsonDateValueProcessor;
 6 import org.soul.util.json.JsonIgnorePropertyFilter;
 7 
 8 import net.sf.json.JSONArray;
 9 import net.sf.json.JSONObject;
10 import net.sf.json.JsonConfig;
11 
12 /**
13  * 依赖net.sf.json包(json-lib-2.4-jdk?.jar)
14  */
15 public abstract class JsonUtils {
16     private static JsonConfig config = new JsonConfig();
17     private static JsonIgnorePropertyFilter ifp = new JsonIgnorePropertyFilter();
18     static {
19         config.setJsonPropertyFilter(ifp);
20         config.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor("yyyy-MM-dd"));
21         config.registerJsonValueProcessor(java.sql.Date.class, new JsonDateValueProcessor("yyyy-MM-dd"));
22         config.registerJsonValueProcessor(Timestamp.class, new JsonDateValueProcessor("yyyy-MM-dd hh:mm:ss"));
23     }
24 
25     /**
26      * 格式化对象成为json对象
27      * @param o 目标对象
28      * @param ignoreFields 忽略字段 如: name,value等
29      * @param ignoreCls 忽略指定类及超类的其所属性
30      * @param ignoreNull 忽略null值
31      * @param ignoreColl 忽略集合属性
32      * @return
33      */
34     public static JSONObject fromObject(Object o,String[] ignoreFields,Class<?> ignoreCls,boolean ignoreNull,boolean ignoreColl){
35         ifp.setIgnoreCls(ignoreCls);
36         ifp.setIgnoreColl(ignoreColl);
37         ifp.setIgnoreNull(ignoreNull);
38         ifp.getFields().clear();
39         if(ignoreFields!=null && ignoreFields.length>0){
40             ifp.addFields(ignoreFields);
41         }
42         JSONObject resultJson = null;
43         try {
44             resultJson = JSONObject.fromObject(o,config);
45         } catch (Exception e) {
46             e.printStackTrace();
47         }
48         return resultJson; 
49     }
50 
51     /**
52      * 格式化集合成为json集合对象
53      * @param o 目标集合
54      * @param ignoreFields 忽略字段 如: name,value等
55      * @param ignoreCls 忽略指定类及超类的其所属性
56      * @param ignoreNull 忽略null值
57      * @param ignoreColl 忽略集合属性
58      * @return
59      */
60     public static JSONArray fromObject(Collection<?> o,String[] ignoreFields,Class<?> ignoreCls,boolean ignoreNull,boolean ignoreColl){
61         ifp.setIgnoreCls(ignoreCls);
62         ifp.setIgnoreColl(ignoreColl);
63         ifp.setIgnoreNull(ignoreNull);
64         ifp.getFields().clear();
65         if(ignoreFields!=null && ignoreFields.length>0){
66             ifp.addFields(ignoreFields);
67         }
68         JSONArray resultJson = null;
69         try {
70             resultJson = JSONArray.fromObject(o,config);
71         } catch (Exception e) {
72             e.printStackTrace();
73         }
74         return resultJson; 
75     }
76 }

 

JSON工具类

标签:

原文地址:http://www.cnblogs.com/sun-space/p/5565464.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!