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;
}
}

json-lib date对象转json ,加入自定义日期格式处理的更多相关文章

  1. js扩展Date对象的方法,格式化日期格式(prototype)

    扩展:Date.prototype.format = function(format){     var o =  {     "M+" : this.getMonth()+1, ...

  2. Json:Java对象和Json文本转换工具类

    Json 是一个用于 Java 对象 和 Json 文本 相互转换的工具类. 安装 下载源码 git clone https://github.com/njdi/durian.git 编译源码 cd ...

  3. POI对Excel自定义日期格式的读取

    用POI读取Excel数据:(版本号:POI3.7) 1.读取Excel private List<String[]> rosolveFile(InputStream is, String ...

  4. poi中如何自定义日期格式

    1. poi的“Quick Guide”中提供了 “How to create date cells ”例子来说明如何创建日期单元格,代码如下: HSSFCellStyle cellStyle = w ...

  5. poi处理excel自定义日期格式

    poi读取excel自定义时间类型时,读取到的是CELL_TYPE_NUMERIC,即数值类型,这个时候如果直接取值的话会发现取到的值和表格中的值不一样,这时应该先判断值是否是时间或者日期类型再进行处 ...

  6. 【教程】Tomcat 的catalina.out 日志按照自定义日期格式进行切割

    本文简单介绍在使用cronolog对tomcat的日志进行自定义日期格式的切割,方便日志的整理和遇到问题日志的排查! 安装cronolog 安装cronolog的方法网上有很多,这里也简单的介绍一下. ...

  7. springMvc返回Json中自定义日期格式

    (一)输出json数据 springmvc中使用jackson-mapper-asl即可进行json输出,在配置上有几点: 1.使用mvc:annotation-driven 2.在依赖管理中添加ja ...

  8. .Net Core WebApi返回的json数据,自定义日期格式

    基本上所有的人都在DateTime类型的字段,被序列化成json的时候,遇到过可恨的Date(1294499956278+0800):但是又苦于不能全局格式化设置,比较难受.以往的方式,要么使用全局的 ...

  9. ASP.Net Core 返回的json数据,自定义日期格式

    //代码位置:Startup.cs public void ConfigureServices(IServiceCollection services) { services.AddMvc() .Ad ...

随机推荐

  1. Codeforce Round #217 Div2

    e,妈蛋,第二题被hack了 没理解清题意,- -居然也把pretest过了,- -# A: 呵呵! B:包含任意一个子集的输出NO!,其他输出YES! C:贪心额,类似上次的Topcoder的500 ...

  2. 转:JAVA强制类型转换

    object对象转换为String的一些总结 ----------------------------------------------------------------------------- ...

  3. Java基础(58):Eclipse中的快捷键大全(转)

    Eclipse快捷键大全(转载) Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行 ...

  4. jquery选项卡切换

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...

  5. Java中的json数据类型操作

    package com.ss1.json; import java.util.ArrayList; import java.util.HashMap; import java.util.List; i ...

  6. React快速入门

    目录: 简介 Hello React! 虚拟DOM React组件 轮子来了:JSX 使用JSX 简介 React是Facebook开源的一个用于构建用户界面的Javascript库,已经 应用于Fa ...

  7. C语言初学者代码中的常见错误与瑕疵(2)

    问题: 另一种阶乘 大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5. 现在我们引入一种新的阶乘概念,将原来的每个数相乘变为i不大于n的所有奇数相乘 例如:5!!=1*3*5.现在明白 ...

  8. 在Asp.Net的Global.asax中Application_Error跳转到自定义错误页无效的解决办法

    在开发Asp.Net系统的时候,我们很多时候希望系统发生错误后能够跳转到一个自定义的错误页面,于是我们经常会在Global.asax中的Application_Error方法中使用Response.R ...

  9. Linux下串口编程【转】

    本文转载自:http://blog.csdn.net/w282529350/article/details/7378388 /************声明:本人只是见到这篇文章对我帮助很大才转载的,但 ...

  10. 【python cookbook】【数据结构与算法】19.同时对数据做转换和换算

    问题:我们需要调用一个换算函数(例如sum().min().max()),但是首先需对数据做转换或者筛选处理 解决方案:非常优雅的方法---在函数参数中使用生成器表达式 例如: # 计算平方和 num ...