在json中Date格式化不符合常用的格式,针对此种方式进行扩展。在项目使用枚举的扩展器的对象的输出格式。
此处给出Date的格式化输出代码以及配置:
(2)创建一个自定义json格式化输出的对象的类此类必须实现JsonValueProcessor 的接口,同时实现类中的各种方法两个方法:
package cn.com.unutrip.java.json;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
/**
* 关于时间的json处理器的应用
*
* @author longgangbai
*
*/
public class DateJsonValueProcessor implements JsonValueProcessor {
public static final String DEFAULT_DATE_PATTERN = "yyyy-MM-dd";
private DateFormat dateFormat;
public DateJsonValueProcessor(String datePattern) {
if (null == datePattern)
dateFormat = new SimpleDateFormat(DEFAULT_DATE_PATTERN);
else
dateFormat = new SimpleDateFormat(datePattern);
}
public Object processArrayValue(Object arg0, JsonConfig arg1) {
return process(arg0);
}
public Object processObjectValue(String arg0, Object arg1, JsonConfig arg2) {
return process(arg1);
}
private Object process(Object value) {
return dateFormat.format((Date) value);
}
}
(2)在配置JSONConfig中添加注册:
/**
* JSON 时间解析器具
*
* @param datePattern
* @return
*/
public static JsonConfig configJson(String datePattern) {
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setExcludes(new String[] { "" });
jsonConfig.setIgnoreDefaultExcludes(false);
jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
jsonConfig.registerJsonValueProcessor(Date.class, new DateJsonValueProcessor(datePattern));
return jsonConfig;
}
分享到:
相关推荐
通过使用如`Gson`这样的库,我们可以轻松地在Java对象和JSON字符串之间进行转换,从而实现数据的有效传输和存储。在实际项目中,务必注意处理可能出现的异常情况,如无效的JSON格式,以及确保数据的安全性。
2. **解析JSON对象**:逐个解析JSON字符串中的键值对,创建一个内部数据结构来存储这些键值对,如数组或自定义的Object类实例。 3. **创建访问接口**:为这个数据结构提供类似"obj("name")"的访问方法,这可能涉及...
本篇文章将深入探讨如何将JSON字符串转换为C++类对象,以实现数据的有效操作和管理。 首先,我们需要一个库来解析JSON字符串。在C++中,有许多流行的JSON库可供选择,例如nlohmann/json、jsoncpp、RapidJSON等。...
在Java中,`json-lib`是一个非常实用的库,它提供了将Java对象转换为JSON字符串,以及将JSON字符串反序列化为Java对象的能力。本文将深入探讨如何使用`json-lib`来处理自定义复杂类型的转换,以便更有效地在后台和...
在Java编程中,JSON...总之,Java中的Jackson库提供了一种高效且灵活的方式来解析JSON字符串,将其转换为对应的Java对象。无论是简单的键值对还是复杂的嵌套结构,Jackson都能够胜任,极大地简化了开发人员的工作。
在这个例子中,`fromJson()`方法接收两个参数:JSON字符串和目标对象的Class类型。它会自动映射JSON中的键值对到对应的Java对象字段上。 ### Java对象转JSON字符串 反向操作,将Java对象转换为JSON字符串,同样...
`Formatting.Indented`参数可以使输出的JSON字符串格式化,便于阅读。 在实际开发中,可能还会遇到复杂的情况,例如处理嵌套的对象和数组,或者自定义日期格式等。`System.Text.Json`和`Newtonsoft.Json`都提供了...
而在`objectToJson`方法中,我们使用`Gson`的`toJson`方法将Java对象序列化为JSON字符串。 为了使用这个工具类,你需要先在你的Android项目中添加Gson库依赖。如果你使用Gradle构建系统,可以在`build.gradle`...
反之,将结构体转化为JSON字符串则是将结构体中的数据转换为JSON格式的文本,便于在网络间传递或存储。 关于“反射”这一概念,在许多面向对象的语言中,反射允许程序在运行时检查和修改其自身的结构和行为。在...
在IT领域,尤其是在JavaScript编程中,经常需要将数据结构如数组和自定义对象转换为字符串,以便于在网络请求(如URL参数)、存储(如cookies)或其他需要文本表示的场景中使用。本文将深入探讨如何实现这种转换,并...
标题中的“提供将对象转换成JSON字符串的方法 (2).pdf”指的是一个关于如何在Java编程中将对象转换为JSON格式的文档。描述中提到的是这个文档的更新日期和作者信息。标签“互联网”可能暗示了这个方法在Web开发或者...
在给定的【标题】"对象转换json字符串类"和【描述】中,我们可以推测这是一个关于如何在C#中将对象转化为JSON字符串的类或方法。 在C#中,我们有多种库可以实现这个功能,如Newtonsoft.Json(也称为Json.NET)和...
在日常开发中,JSON字符串格式化工具(如JsonView)是不可或缺的辅助工具。它们可以帮助开发者快速检查和理解JSON数据,提高工作效率,特别是在处理大量复杂数据或调试API时。使用这些工具,你可以更加方便地处理...
"这样的中文字符串会以UTF-8编码的形式出现在JSON字符串中。 如果你需要自定义编码规则,例如处理嵌套的复杂对象或自定义类,可以提供一个序列化函数作为`dumps()`的`default`参数。这样,当遇到不能直接转换的...
在Java中,我们经常需要将JSON字符串与Java对象进行相互转换,以便于数据的传输和处理。本篇文章将详细探讨这个过程,以及如何使用常见的Java JSON库,如Gson和Jackson,进行JSON与Java对象的转换。 首先,让我们...
通过这些函数,我们可以根据结构体的定义,逐个将成员的值插入到JSON对象中,最终生成表示结构体的JSON字符串。 在实际应用中,这个功能可能涉及以下步骤: 1. 定义C结构体:首先,我们需要定义一个C结构体,其...
JavaScript提供了`JSON.stringify()`方法来将一个JavaScript值(包括对象或数组)转换为JSON字符串。这个方法可以接收三个参数: - 要转换的值。 - 一个可选的替换函数,用于过滤或修改转换的结果。 - 一个可选...
- 当使用`replacer`函数时,可以通过返回undefined来排除某个属性不被包含在JSON字符串中。 ### 自身转换成JSON字符串 在描述中提到的"支持将自身转换成json字符串输出",这可能是指某些类或对象实例提供了自己的`...
在Java开发中,数据交换和存储经常涉及到对象与JSON字符串之间的转换。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Java提供了多种库来实现对象与...
在描述中提到的“以对象的形式查看json对象”,指的是将JSON字符串转换为可操作的对象。在JavaScript中,可以使用`JSON.parse()`将JSON字符串转化为JavaScript对象,从而可以访问和修改其属性。例如: ```javascript...