`
longgangbai
  • 浏览: 7325736 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

在json中自定义对象转换json的字符串输出格式

阅读更多

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

 

分享到:
评论
1 楼 aigo 2010-01-14  
谢楼主,正急于解决这个问题。

相关推荐

    模仿json,根据对象生成json字符串,根据字符串生成对象

    通过使用如`Gson`这样的库,我们可以轻松地在Java对象和JSON字符串之间进行转换,从而实现数据的有效传输和存储。在实际项目中,务必注意处理可能出现的异常情况,如无效的JSON格式,以及确保数据的安全性。

    json字符串转换c++类对象

    本篇文章将深入探讨如何将JSON字符串转换为C++类对象,以实现数据的有效操作和管理。 首先,我们需要一个库来解析JSON字符串。在C++中,有许多流行的JSON库可供选择,例如nlohmann/json、jsoncpp、RapidJSON等。...

    使用json-lib自定义复杂类型转换为Json字符串

    在Java中,`json-lib`是一个非常实用的库,它提供了将Java对象转换为JSON字符串,以及将JSON字符串反序列化为Java对象的能力。本文将深入探讨如何使用`json-lib`来处理自定义复杂类型的转换,以便更有效地在后台和...

    asp字符串转json对象类

    2. **解析JSON对象**:逐个解析JSON字符串中的键值对,创建一个内部数据结构来存储这些键值对,如数组或自定义的Object类实例。 3. **创建访问接口**:为这个数据结构提供类似"obj("name")"的访问方法,这可能涉及...

    解析Json字符串直接转换为对象(包括多层List集合 嵌套)所用jar包

    在Java编程中,JSON...总之,Java中的Jackson库提供了一种高效且灵活的方式来解析JSON字符串,将其转换为对应的Java对象。无论是简单的键值对还是复杂的嵌套结构,Jackson都能够胜任,极大地简化了开发人员的工作。

    利用Google Gson实现JSON字符串和对象之间相互转换

    在这个例子中,`fromJson()`方法接收两个参数:JSON字符串和目标对象的Class类型。它会自动映射JSON中的键值对到对应的Java对象字段上。 ### Java对象转JSON字符串 反向操作,将Java对象转换为JSON字符串,同样...

    C#字符串和JSON数据类型相互转换

    `Formatting.Indented`参数可以使输出的JSON字符串格式化,便于阅读。 在实际开发中,可能还会遇到复杂的情况,例如处理嵌套的对象和数组,或者自定义日期格式等。`System.Text.Json`和`Newtonsoft.Json`都提供了...

    安卓 JSON实现对象和数组的相互转换

    而在`objectToJson`方法中,我们使用`Gson`的`toJson`方法将Java对象序列化为JSON字符串。 为了使用这个工具类,你需要先在你的Android项目中添加Gson库依赖。如果你使用Gradle构建系统,可以在`build.gradle`...

    C语言实现的 json格式字符串与结构体自动相互转化

    反之,将结构体转化为JSON字符串则是将结构体中的数据转换为JSON格式的文本,便于在网络间传递或存储。 关于“反射”这一概念,在许多面向对象的语言中,反射允许程序在运行时检查和修改其自身的结构和行为。在...

    把数组和自定义对象转换成字符串.docx

    在IT领域,尤其是在JavaScript编程中,经常需要将数据结构如数组和自定义对象转换为字符串,以便于在网络请求(如URL参数)、存储(如cookies)或其他需要文本表示的场景中使用。本文将深入探讨如何实现这种转换,并...

    提供将对象转换成JSON字符串的方法 (2).pdf

    标题中的“提供将对象转换成JSON字符串的方法 (2).pdf”指的是一个关于如何在Java编程中将对象转换为JSON格式的文档。描述中提到的是这个文档的更新日期和作者信息。标签“互联网”可能暗示了这个方法在Web开发或者...

    对象转换json字符串类

    在给定的【标题】"对象转换json字符串类"和【描述】中,我们可以推测这是一个关于如何在C#中将对象转化为JSON字符串的类或方法。 在C#中,我们有多种库可以实现这个功能,如Newtonsoft.Json(也称为Json.NET)和...

    json字符串格式化工具

    在日常开发中,JSON字符串格式化工具(如JsonView)是不可或缺的辅助工具。它们可以帮助开发者快速检查和理解JSON数据,提高工作效率,特别是在处理大量复杂数据或调试API时。使用这些工具,你可以更加方便地处理...

    python对象转json字符串小工具

    "这样的中文字符串会以UTF-8编码的形式出现在JSON字符串中。 如果你需要自定义编码规则,例如处理嵌套的复杂对象或自定义类,可以提供一个序列化函数作为`dumps()`的`default`参数。这样,当遇到不能直接转换的...

    Json与java对象之间相互转换源码

    在Java中,我们经常需要将JSON字符串与Java对象进行相互转换,以便于数据的传输和处理。本篇文章将详细探讨这个过程,以及如何使用常见的Java JSON库,如Gson和Jackson,进行JSON与Java对象的转换。 首先,让我们...

    C实现的 json格式字符串与结构体转化

    通过这些函数,我们可以根据结构体的定义,逐个将成员的值插入到JSON对象中,最终生成表示结构体的JSON字符串。 在实际应用中,这个功能可能涉及以下步骤: 1. 定义C结构体:首先,我们需要定义一个C结构体,其...

    json对象与字符串互转

    JavaScript提供了`JSON.stringify()`方法来将一个JavaScript值(包括对象或数组)转换为JSON字符串。这个方法可以接收三个参数: - 要转换的值。 - 一个可选的替换函数,用于过滤或修改转换的结果。 - 一个可选...

    javascript对象转换成json

    - 当使用`replacer`函数时,可以通过返回undefined来排除某个属性不被包含在JSON字符串中。 ### 自身转换成JSON字符串 在描述中提到的"支持将自身转换成json字符串输出",这可能是指某些类或对象实例提供了自己的`...

    java 对象与json字符串互相转换工具类

    在Java开发中,数据交换和存储经常涉及到对象与JSON字符串之间的转换。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Java提供了多种库来实现对象与...

    验证字符串是否为json格式

    在描述中提到的“以对象的形式查看json对象”,指的是将JSON字符串转换为可操作的对象。在JavaScript中,可以使用`JSON.parse()`将JSON字符串转化为JavaScript对象,从而可以访问和修改其属性。例如: ```javascript...

Global site tag (gtag.js) - Google Analytics