JAVA中json日期格式问题的办法

package cn.jbit.BookSys.util;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;

public class JsonDateValueProcessor implements JsonValueProcessor{
     private String format ="yyyy-MM-dd";  

        public JsonDateValueProcessor() {
            super();
        }  

        public JsonDateValueProcessor(String format) {
            super();
            this.format = format;
        }  

        @Override
        public Object processArrayValue(Object value, JsonConfig jsonConfig) {
            // TODO Auto-generated method stub
             String[] obj = {};
                if (value instanceof Date[])
                {
                    SimpleDateFormat sf = new SimpleDateFormat(format);
                    Date[] dates = (Date[]) value;
                    obj = new String[dates.length];
                    for (int i = 0; i < dates.length; i++)
                    {
                        obj[i] = sf.format(dates[i]);
                    }
                }
                return obj;
        }

        @Override
        public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
            // TODO Auto-generated method stub
            if (value instanceof Date)
            {
                String str = new SimpleDateFormat(format).format((Date) value);
                return str;
            }
            return value;
        }
         public String getFormat()
            {
                return format;
            }  

            public void setFormat(String format)
            {
                this.format = format;
            }  

}
时间: 2024-11-05 13:51:23

JAVA中json日期格式问题的办法的相关文章

4种解决json日期格式问题的办法

开发中有时候需要从服务器端返回json格式的数据,在后台代码中如果有DateTime类型的数据使用系统自带的工具类序列化后将得到一个很长的数字表示日期数据,如下所示: //设置服务器响应的结果为纯文本格式 context.Response.ContentType = "text/plain"; //学生对象集合 List<Student> students = new List<Student> { new Student(){Name ="Tom&q

json日期格式问题的办法

开发中有时候需要从服务器端返回json格式的数据,在后台代码中如果有DateTime类型的数据使用系统自带的工具类序列化后将得到一个很长的数字表示日期数据,如下所示: //设置服务器响应的结果为纯文本格式 context.Response.ContentType = "text/plain"; //学生对象集合 List<Student> students = new List<Student> { new Student(){Name ="Tom&q

在java中如何处理日期格式问题

1.最简洁的办法就是在对应的对象中加注解 如下一个例子: @DateTimeFormat(pattern="yyyy-MM-dd") @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8") private Date valueDate; 注意:timezone = "GMT+8"一定要加,不然会少一天 如果你的字段是一个日期格式,就如上定义,但是如果使用的是Mybatis,在M

java中的日期格式

时间日期标识符: yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一年中的第几天 F:一月中的第几个星期(会把这个月总共过的天数除以7) w:一年中的第几个星期 W:一月中的第几星期(会根据实际情况来算) a:上下午标识 k:和HH差不多,表示一天24小时制(1-24). K:和hh<span style="font-family: Arial, Helvetica, sans-serif;&q

java中date日期格式的各种转换

示例 Date dt =new Date(); System.out.println(dt); //格式: Wed Jul 06 09:28:19 CST 2016 //格式:2016-7-6 String formatDate = null; formatDate = DateFormat.getDateInstance().format(dt); System.out.println(formatDate); //格式:2016年7月6日 星期三 formatDate = DateForma

项目总结2--Oracle中时间日期格式

在Oracle中,方法没有SQL Server那么多 一 转换方法to_date() :作用将字符类型按一定格式转化为日期类型: to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') to_char():转换成字符串类型,如:To_char(1234.5, '$9999.9'),结果:$1234.5 to_number() :转换成数值类型,如:To_number('1234.5'),结果:1234.5 Oracle的to_date()方

Java与C#间json日期格式互转完美解决方案

http://blog.csdn.net/wilsonke/article/details/24362851 作用一种简单方便的数据传输方案,JSON已经成为替代XML的事实标准.然而在JSON中,时间(DateTime,Timestamp,Date等)格式一直没有很好地统一,当需要跨平台序列化/反序列化时,遇到不少麻烦.作者经过反复尝试,解决了C#与Java通过JSON进行时间传输的困难.C#解析Java/Javascript生成的JSON并不困难,但Java解析C#生成的JSON困难重重.下

Java处理Excel中的日期格式

Java处理Excel中的日期格式 2011-12-23 17:34:03|  分类: java |举报 |字号 订阅 下载LOFTER 我的照片书  | 在Excel中的日期格式,其数值为距离1900年1月1日的天数,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171.在POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理.正确的处理方法是先判断单元格的类型是否则NUMERIC

填坑:Java 中的日期转换

我们之前讨论过时间,在Java 中有一些方法会出现横线?比如Date 过期方法. 参考文章:知识点:java一些方法会有横线?以Date 过期方法为例 Java中的日期和时间处理方法 Date类(官方不再推荐使用,官方解释Date类不利于国际化,推荐使用Calendar类) Calendar类 DateFormat类 使用此类来时间初始化 我们发现,时间toLocalString 会有横线: vo.setSubmitDate(new Date().toLocaleString()); 可以改为: