java封装json格式工具类优化
2017-04-15 07:43
369 查看
需要調用的主要方法
/**
* @author:作者Lelonta
* @version:1.0
* 创建时间:2017-4-12 下午10:27:50
* 类说明
*/
public class MyJson {
}
封裝MakeJsonUtil方法 被myjson引用
//创建 jsonconfig对象
private static JsonConfig jsonConfig = null;
時間格式化 這個類可以從網上找到
public class JsonDateValueProcessor implements JsonValueProcessor {
private String format =”yyyy-MM-dd HH:mm:ss”;
}
/**
* @author:作者Lelonta
* @version:1.0
* 创建时间:2017-4-12 下午10:27:50
* 类说明
*/
public class MyJson {
/** * 返回成功数据 * @param resObj * @return */ public static JSONObject returnSucc(Object resobj){ Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40000"); //obj.put("info", "success"); obj.put("resobj", resobj); JSONObject jsonObject = MakeJsonUtil.createJson(obj); return jsonObject; } /** * 返回成功数据 * 排除不想要的数据字段 * @param resobj * @param excludes * @return */ public static JSONObject returnSuccAndExclude(Object resobj,String[] excludes){ //定义一个map Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40000"); //obj.put("info", "success"); obj.put("resobj", resobj); JSONObject jsonObject = MakeJsonUtil.createJsonExclude(obj, excludes); return jsonObject; } /** * 返回成功数据以及其他相加的数据 * 排除不想要的数据字段 * @param resObj * @return */ public static JSONObject returnSuccForOtherAndExclude(Object resobj,Object other ,String[] excludes){ Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40000"); //obj.put("info", "success"); obj.put("resobj", resobj); obj.put("other", other); JSONObject jsonObject = MakeJsonUtil.createJsonExclude(obj, excludes); return jsonObject; } /** * 返回成功数据以及其他想加的数据 * @param resobj * @param other * @return */ public static JSONObject returnSuccForOther(Object resobj,Object other){ Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40000"); //obj.put("info", "success"); obj.put("resobj", resobj); obj.put("other", other); JSONObject jsonObject = MakeJsonUtil.createJson(obj); return jsonObject; } /** * 返回错误结果 * @param resObj * @return */ public static JSONObject returnFail(Object resobj){ Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40004"); //obj.put("info", "success"); obj.put("resobj", resobj); JSONObject jsonObject = MakeJsonUtil.createJson(obj); return jsonObject; } /** * 返回错误数据 * 排除不想要的数据字段 * @param resobj * @param excludes * @return */ public static JSONObject returnFailAndExclude(Object resobj,String[] excludes){ Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40004"); //obj.put("info", "success"); obj.put("resobj", resobj); JSONObject jsonObject = MakeJsonUtil.createJsonExclude(obj, excludes); return jsonObject; } public static void main(String[] args) { Map<String, Object> obj = new HashMap<String, Object>(); obj.put("code", "40000"); //obj.put("info", "success"); obj.put("resobj", "resobj"); obj.put("other", "other"); JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setIgnoreDefaultExcludes(true); //默认为false,即过滤默认的key jsonConfig.setExcludes(new String[]{"other"}); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor()); JSONObject jsonObject = JSONObject.fromObject(obj,jsonConfig); System.out.println(jsonObject); }
}
封裝MakeJsonUtil方法 被myjson引用
//创建 jsonconfig对象
private static JsonConfig jsonConfig = null;
/** * 返回jsonobject * @param obj * @return */ public static JSONObject createJson(Map<String, Object> obj) { jsonConfig = new JsonConfig(); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor()); JSONObject jsonObject = JSONObject.fromObject(obj,jsonConfig); return jsonObject; } /** * 返回jsonobject,并且去除不想要的字段 * @param obj * @param excludes * @return */ public static JSONObject createJsonExclude(Map<String, Object> obj,String[] excludes) { jsonConfig = new JsonConfig(); jsonConfig.setExcludes(excludes); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor()); JSONObject jsonObject = JSONObject.fromObject(obj,jsonConfig); return jsonObject; }
時間格式化 這個類可以從網上找到
public class JsonDateValueProcessor implements JsonValueProcessor {
private String format =”yyyy-MM-dd HH:mm:ss”;
public JsonDateValueProcessor() { super(); } public JsonDateValueProcessor(String format) { super(); this.format = format; } public Object processArrayValue(Object paramObject, JsonConfig paramJsonConfig) { return process(paramObject); } public Object processObjectValue(String paramString, Object paramObject, JsonConfig paramJsonConfig) { return process(paramObject); } private Object process(Object value){ if(value instanceof Date){ SimpleDateFormat sdf = new SimpleDateFormat(format,Locale.CHINA); return sdf.format(value); } return value == null ? "" : value.toString(); }
}
相关文章推荐
- Java 集合 转换成 Json格式 字符串 工具类
- JAVA解析和封装JSON格式数据
- 一个java处理JSON格式数据的通用类(封装了一个class)
- JAVA_Gson解析json工具类封装
- Java的将任意格式转换为JSON数据格式的工具类
- Android 调用webService+回调接口+线程池工具类封装(支持json格式接口和xml格式接口)
- Java封装JSON工具类
- 捕获异常、存sd卡、自定义封装json(含网络工具类)、生成Json格式、传log日志到服务器、app崩溃友好重启
- json数据与JAVA数据的转换 jsonJavaBean.netApache 自己编写了一个工具类,处理页面提交json格式数据到后台,再进行处理成JAVA对象数据 1、DTO:Data T
- 一个java处理JSON格式数据的通用类(封装了一个class)
- 很好用的Google 开源项目Gson在java中解析和创建json格式的数据
- Json-lib 如何转换日期格式的字段 json-->java
- 一个java处理JSON格式数据的通用类
- java对象转json格式
- JAVA中封装JSONUtils工具类及使用
- JSON-lib转化JAVA对象为JSON格式字符串
- 关于Java解析json格式数据
- Json下日期格式控制 与 Java 日期计算
- json数据封装和Java类的映射
- 【转】一个java处理JSON格式数据的通用类