zoukankan      html  css  js  c++  java
  • json-lib date对象转json ,加入自定义日期格式处理

    import net.sf.json.JSONObject;   
    import net.sf.json.JsonConfig;   
    import net.sf.json.processors.JsonValueProcessor;   
     
    public class DateJsonValueProcessor implements JsonValueProcessor {   
        public static final String DEFAULT_DATE_PATTERN = "yyyy-MM-dd HH:mm:ss";   
        private DateFormat dateFormat;   
     
        /**    
         * 构造方法.    
         *    
         * @param datePattern 日期格式    
         */  
        public DateJsonValueProcessor(String datePattern) {   
            try {   
                dateFormat = new SimpleDateFormat(datePattern);   
            } catch (Exception ex) {   
                dateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN);   
            }   
        }   
     
        public Object processArrayValue(Object value, JsonConfig jsonConfig) {   
            return process(value);   
        }   
     
        public Object processObjectValue(String key, Object value,   
                JsonConfig jsonConfig) {   
            return process(value);   
        }   
     
        private Object process(Object value) {   
            if (value == null) {   
                value = new Date();   //为null时返回当前日期,也可以返回"",看需要   
            }   
            return dateFormat.format((Date) value);   
        }   
     
        public static String map2JSonStr(Map map) {   
            JsonConfig jsonConfig = new JsonConfig();   
            DateJsonValueProcessor beanProcessor = new DateJsonValueProcessor(   
                    DEFAULT_DATE_PATTERN);   
            jsonConfig.registerJsonValueProcessor(Date.class, beanProcessor);   
     
            JSONObject jsonObject = JSONObject.fromObject(map, jsonConfig);   
     
            return jsonObject.toString();   
        }      
     
        //将对象转换为json string,使用上面定义的的日期格式   
        @SuppressWarnings("unchecked")   
        public static JSONObject obj2JsonObj(Object obj) {   
            JsonConfig jsonConfig = new JsonConfig();   
            DateJsonValueProcessor beanProcessor = new DateJsonValueProcessor(   
                    DEFAULT_DATE_PATTERN);   
            jsonConfig.registerJsonValueProcessor(Date.class, beanProcessor);   
     
            JSONObject jsonObject = JSONObject.fromObject(obj, jsonConfig);   
     
            return jsonObject;   
        }   
    }  
     
    import net.sf.json.JSONObject;
    import net.sf.json.JsonConfig;
    import net.sf.json.processors.JsonValueProcessor;
     
    public class DateJsonValueProcessor implements JsonValueProcessor {
        public static final String DEFAULT_DATE_PATTERN = "yyyy-MM-dd HH:mm:ss";
        private DateFormat dateFormat;
     
        /**  
         * 构造方法.  
         *  
         * @param datePattern 日期格式  
         */
        public DateJsonValueProcessor(String datePattern) {
            try {
                dateFormat = new SimpleDateFormat(datePattern);
            } catch (Exception ex) {
                dateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN);
            }
        }
     
        public Object processArrayValue(Object value, JsonConfig jsonConfig) {
            return process(value);
        }
     
        public Object processObjectValue(String key, Object value,
                JsonConfig jsonConfig) {
            return process(value);
        }
     
        private Object process(Object value) {
            if (value == null) {
                value = new Date();   //为null时返回当前日期,也可以返回"",看需要
            }
            return dateFormat.format((Date) value);
        }
     
        public static String map2JSonStr(Map map) {
            JsonConfig jsonConfig = new JsonConfig();
            DateJsonValueProcessor beanProcessor = new DateJsonValueProcessor(
                    DEFAULT_DATE_PATTERN);
            jsonConfig.registerJsonValueProcessor(Date.class, beanProcessor);
     
            JSONObject jsonObject = JSONObject.fromObject(map, jsonConfig);
     
            return jsonObject.toString();
        }    
     
        //将对象转换为json string,使用上面定义的的日期格式
        @SuppressWarnings("unchecked")
        public static JSONObject obj2JsonObj(Object obj) {
            JsonConfig jsonConfig = new JsonConfig();
            DateJsonValueProcessor beanProcessor = new DateJsonValueProcessor(
                    DEFAULT_DATE_PATTERN);
            jsonConfig.registerJsonValueProcessor(Date.class, beanProcessor);
     
            JSONObject jsonObject = JSONObject.fromObject(obj, jsonConfig);
     
            return jsonObject;
        }
    }
  • 相关阅读:
    浅谈数据的离散化
    【ZOJ】3785 What day is that day? ——浅谈KMP在ACM竞赛中的暴力打表找规律中的应用
    【Python】iichats —— 命令行下的局域网聊天程序
    【Python】iiblogs ——命令行下的网页收藏夹
    【Python】iiacm_filemaker ——简易的.cpp文件创建即初始化脚本,ACMer专用
    【黑科技】读写优化
    【POJ】1330 Nearest Common Ancestors ——最近公共祖先(LCA)
    【HDU】1717 小数化分数2 ——计数原理
    【POJ】2318 TOYS ——计算几何+二分
    【HDU】4923 Room and Moor(2014多校第六场1003)
  • 原文地址:https://www.cnblogs.com/jinzhiming/p/5066657.html
Copyright © 2011-2022 走看看