java json日期格式化_JSON格式化日期方法
首先我使用的工具是json-lib
对于date类型的转化一直是json中比较复杂的事情,我这只提出一种自己会的方式与大家分享,如果还好更好的方式别忘记告诉我学习下嘿嘿在这先谢了
对于date类型直接转化如下
java.util.Date testDate = new Date();
JSONObject jsonFromDate = JSONObject.fromObject(testDate);
System.out.println(jsonFromDate);
//prints {"date":26,"day":1,"hours":11,"minutes":30,"month":9,"seconds":18,"time":1256527818296,"timezoneOffset":-480,"year":109}
上述转化后的格式明显不利于我们使用,下面介绍我的方法
//注册date类型的转化方式
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.registerJsonValueProcessor(java.util.Date.class, new JsonValueProcessorImplTest());
JSONObject jsonFromBean = JSONObject.fromObject(testBean,jsonConfig);
System.out.println(jsonFromBean);
//prints {"birthday":"2009-10-26","id":"id","name":"name"}
String[] dateFormats = new String[] {"yyyy/MM/dd","yyyy-MM-dd"};
JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats));
TestBean jsonToBean = (TestBean)JSONObject.toBean(jsonFromBean,TestBean.class);
System.out.println(jsonToBean);
//prints TestBean@1126b07[id=id,name=name,birthday=Mon Oct 26 00:00:00 CST 2009]
其中需要的类如下:
1.准备测试数据
import java.util.Date;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;
public class TestBean {
private String id;
private String name;
private java.util.Date birthday;
public TestBean() {
super();
}
public TestBean(String id, String name, Date birthday) {
super();
this.id = id;
this.name = name;
this.birthday = birthday;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public java.util.Date getBirthday() {
return birthday;
}
public void setBirthday(java.util.Date birthday) {
this.birthday = birthday;
}
public String toString() {
return ReflectionToStringBuilder.toString(this);
}
}
2.创建date格式化类
import java.text.SimpleDateFormat;
import java.util.Date;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
public class JsonValueProcessorImplTest implements JsonValueProcessor {
private String format = "yyyy-MM-dd";
public JsonValueProcessorImplTest() {
super();
}
public JsonValueProcessorImplTest(String format) {
super();
this.format = format;
}
@Override
public Object processArrayValue(Object value, JsonConfig jsonConfig) {
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) {
if (value instanceof java.util.Date) {
String str = new SimpleDateFormat(format).format((Date) value);
return str;
}
return value.toString();
}
public String getFormat() {
return format;
}
public void setFormat(String format) {
this.format = format;
}
}
通过如上方式我们就可以把含date类型的javabean在javabean和json格式中相互转化了
3
顶
0
踩
分享到:
2009-10-26 11:47
浏览 19407
评论
3 楼
xmllong
2011-04-08
把封装的类共享下吧
2 楼
lyking2001
2011-01-13
Soimissu_plum 写道
感谢。。。实现了功能 ... 要是能见简单的封装下更好了....每个bean都要这么写转换麻烦,我写成了一个工具类,,,
呵呵,这个是当时学习的时候写的,项目中已经做了封装
1 楼
Soimissu_plum
2011-01-06
感谢。。。实现了功能 ... 要是能见简单的封装下更好了....每个bean都要这么写转换麻烦,我写成了一个工具类,,,
java json日期格式化_JSON格式化日期方法相关推荐
- java json日期_JSON日期到Java日期?
本问题已经有最佳答案,请猛点这里访问. 我在任何地方都找不到这个.我从返回标准JSON日期的API中获取一些JSON.您可以通过在javascript控制台中运行此代码来查看格式: > new ...
- java json 对象操作_JSON的相关操作和与java对象的转化
JSON概述: JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) 使用{}进行包含对象,可以使用[]包含{}对象的形式,对象里面也可以含有[] ...
- java json中文乱码_JSON数据传输,解决中文乱码
遇到Json从Java后台传到前端乱码的问题, 设置格式为text/json */ response.setContentType("text/json"); /*设置字符集为' ...
- java json 修改字段_JSON文件-Java:编辑/更新字段值
我的工作流程中有一些JSONObject,并且通过将它们写入json文件来存储相同的JSONObject. 我想要一种有效的方式来更新json文件, 仅 更新 需要的字段, 以及更新的JSONObje ...
- java json串拼接_json字符串的拼接与解析
json字符串拼接(目前使用过两种方式): 1.运用StringBuilder拼接 StringBuilder json = new StringBuilder(); json.append(&quo ...
- Java 8日期– LocalDate,LocalDateTime,即时
Java 8 Date Time API is one of the most sought after change for developers. Java has been missing a ...
- 格式化json_在Spring Boot中格式化JSON日期
1.概述 在本教程中,我们将展示如何在Spring Boot应用程序中格式化JSON日期字段. 我们将探讨使用Jackson格式化日期的各种方法,它被Spring Boot用作默认的JSON处理器. ...
- json日期格式化 java_java_Java Web程序中利用Spring框架返回JSON格式的日期,返回Json时格式化日期Date
第一 - phpStudy...
Java Web程序中利用Spring框架返回JSON格式的日期 返回Json时格式化日期Date第一步:创建CustomObjectMapper类 /** * 解决SpringMVC使用@Respo ...
- java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)...
转载地址:http://www.devba.com/index.php/archives/4581.html java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明); ...
- 如何在Java 8中使用LocalDateTime格式化/解析日期-示例教程
Java项目中的常见任务之一是将日期格式化或解析为String,反之亦然. 解析日期表示您有一个表示日期的字符串,例如" 2017-08-3",并且要将其转换为表示Java中日期的 ...
最新文章
- JavaScript脚本文件学习总结
- 通过Google挖掘细分市场的一个案例
- linux xampp常见问题
- 这些 IDEA 的优化设置赶紧安排起来,效率提升不是一点点!
- 2020 年 10 月程序员工资统计,终于涨了!
- 音频开发中常见的四个错误
- 全民加速节:全站加速在互联网媒体应用上的最佳实践
- JAVA高并发服务器工作笔记0001---Java中InetAddress与InetSocketAddress的基本用法
- day08【后台】权限控制-上
- 清除计算机用户缓存,如何在Windows 7中清除内存缓存,释放电脑空间?
- Office excel2010如何用两个文件分别打开两个窗口
- html 在线测试 鱼缸,新做的草缸教程,看1遍你也会做,鱼缸造景其实很简单
- 知识图谱 语义网络,语义网,链接数据和知识图谱 (二)--基础篇
- 【二次分配问题】基于遗传算法 (GA)、粒子群优化 (PSO) 和萤火虫算法 (FA) 求解二次分配( QAP)问题(MATLAB 实现)
- ARM架构SMMU驱动详解
- 简述工业机器人示教再现的一般步骤_工业机器人示教与初识编程语言
- WooCommerce Product Feed指南 – Google Shopping和Facebook[2022]
- Ubuntu 14.04 安装 fcitx(小企鹅) 输入法
- matlab离散傅立叶变换的应用,离散傅里叶变换
- MATLAB Simulink
- MathWorks 中国
- wincc版本升级_西门子触摸屏OS更新方法
热门文章
- 汉语拼音音节的歧义指数
- 普渡大学计算机工程专业提前毕业,Purdue的ECE「普渡大学西拉法叶分校电气与计算机工程学院」...
- Delphi 简体 繁体 转换
- 如何对Windows 2000中出现的“Stop 0x0000007B”错误信息进行故障诊断
- Samba共享文件夹Windows中拷贝文件拒绝访问
- kubernetes 26、liveness和readiness的原理与使用
- tplink路由器设置网址方法
- matplotlib工具栏源码探析三(添加、删除自定义工具项)
- 团队项目--“我爱淘”校园二手书店 NABC分析
- 路由器和三层交换机区别