json-lib-2.2可以为对应的class注册解析类,记住一定要2.2,2.1有同步问题。切记切记。
写一个DateJsonValueProcessor.java
package anni.core.web.json;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
/**
* @author Lingo
* @since 2007-08-02
*/
public class DateJsonValueProcessor implements JsonValueProcessor {
public static final String DEFAULT_DATE_PATTERN = "yyyy-MM-dd";
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) {
return dateFormat.format((Date) value);
}
}
然后在bean -> json的时候
/**
* write.
*
* @param bean obj
* @param writer 输出流
* @param excludes 不转换的属性数组
* @param datePattern date到string转换的模式
* @throws Exception 写入数据可能出现异常
*/
public static void write(Object bean, Writer writer,
String[] excludes, String datePattern) throws Exception {
JsonConfig jsonConfig = configJson(excludes, datePattern);
JSON json = JSONSerializer.toJSON(bean, jsonConfig);
json.write(writer);
}
/**
* 配置json-lib需要的excludes和datePattern.
*
* @param excludes 不需要转换的属性数组
* @param datePattern 日期转换模式
* @return JsonConfig 根据excludes和dataPattern生成的jsonConfig,用于write
*/
public static JsonConfig configJson(String[] excludes,
String datePattern) {
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setExcludes(excludes);
jsonConfig.setIgnoreDefaultExcludes(false);
jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
jsonConfig.registerJsonValueProcessor(Date.class,
new DateJsonValueProcessor(datePattern));
return jsonConfig;
}
分享到:
- 2008-03-07 16:07
- 浏览 2935
- 评论(1)
- 论坛回复 / 浏览 (1 / 7351)
- 查看更多
相关推荐
json-lib是一个Java库,它提供了一种方便的方式来序列化和反序列化Java对象为JSON格式,以及将JSON数据转换回Java对象。 json-lib-2.4-jdk15.jar是json-lib的一个特定版本,适用于JDK 1.5环境。这个版本的库包含了...
1. **JSON序列化与反序列化**:json-lib允许将Java对象转换为JSON字符串,反之亦然。例如,你可以将一个Java的HashMap转换成JSON格式,便于在网络上传输,或者将接收到的JSON字符串解析成Java对象,便于进一步处理。...
JSON库如json-lib是Java开发中处理JSON数据的重要工具。`json-lib-2.3-jdk15`是JSON库的一个特定版本,专为JDK 1.5设计,以确保与该版本的Java环境兼容。 ### JSON Lib简介 JSON Lib是一个Java库,它提供了将Java...
通过这种方式,Json-lib将在处理日期字段时使用我们定义的格式。 在提供的`date.js`文件中,虽然我们无法直接查看JavaScript代码内容,但可以推测这可能是一个示例脚本,展示了如何在JavaScript环境中处理与日期...
JSON-lib是一个Java库,用于处理JSON(JavaScript Object Notation)和XML之间的转换。这个框架使得在Java应用程序中处理这两种数据格式变得简单。JSON是一种轻量级的数据交换格式,被广泛用于Web服务和前后端交互,...
1. **JSON序列化和反序列化**:json-lib提供了一系列API,可以将Java对象(如Java Bean、Map、Collection、数组等)轻松地转换成JSON字符串,反之也可以将JSON字符串解析回相应的Java对象。这对于数据交换非常有用,...
`json-lib`是一个Java库,它提供了一种简单的方式来序列化和反序列化Java对象为JSON格式,反之亦然。这个库特别有用,因为它支持多种Java集合和类型,包括List、Map、数组等。 `json-lib-2.3-jdk15.jar`是`json-lib...
4. **类型转换**:`json-lib`提供了一些工具类,如`JSONArray`和`JSONObject`,它们具有丰富的API,可以方便地进行JSON对象的操作,如添加、删除、修改元素,以及获取特定类型的值(如字符串、数字、日期等)。...
JSON-lib提供了多种Java API,使得开发者能够方便地在Java对象和JSON格式之间进行转换。 在Java中,将JSON字符串解析成对象是常见的需求。JSON-lib通过以下几种方式实现了这一功能: 1. **JavaBeans到JSON**:你...
在实际开发中,JSON-Lib可以帮助Java开发者轻松地将Java对象转换为JSON字符串,或将JSON文本解析成Java对象。这对于Web服务、数据交换或者存储JSON格式的数据非常有用。例如,你可以用它来序列化Java对象以便在网络...
Java中的json-lib库是处理JSON数据的一个常用工具,它提供了将Java对象转换为JSON字符串以及从JSON字符串反序列化回Java对象的功能。然而,在处理复杂的嵌套数据结构时,如果不小心可能会导致无限循环的问题。 在...
2. **日期格式**:对于日期类型的字段,需要确保JSON字符串中的日期格式与Java中的日期格式相匹配。例如,文中提到的“yyyy-MM-dd HH:mm:ss”格式。 3. **异常处理**:在实际开发中,应妥善处理可能发生的异常,比如...
首先,json-lib是一个Java库,它提供了一系列的方法来将Java对象转换为JSON格式的字符串,以及将JSON格式的字符串反序列化回Java对象。这个库对于那些不支持原生JSON处理的旧版本JDK尤其有用,因为Java 6及以上版本...
`json-lib` 是一个 Java 库,它提供了将 Java 对象转换为 JSON 格式以及将 JSON 解析回 Java 对象的功能。这篇博客文章将探讨 `json-lib` 的使用方法和关键特性。 首先,`json-lib` 支持多种类型的 Java 对象转换,...
默认情况下,`json-lib`会尝试自动映射Java对象的字段到JSON键值对。例如,如果你有一个名为`Person`的类: ```java public class Person { private String name; private int age; // getters and setters } `...
`json-lib`是一个Java项目,它的主要功能是为Java开发者提供了一种方便快捷的方式来序列化和反序列化Java对象到JSON,以及将JSON数据转换回Java对象。`json-lib-2.4-jdk15`是该库的一个特定版本,针对JDK 1.5进行...
json-lib是一个Java库,提供了将Java对象转换为JSON表示以及将JSON数据转换回Java对象的能力。对于Struts2,这个库使得应用程序能够轻松地处理JSON数据,例如在AJAX请求和响应中。 2. **struts2-json-plugin-2.1....
总结起来,json-lib库为Java开发者提供了一种简单易用的方式来处理JSON数据,包括将Java对象转换为JSON格式,以及从JSON反序列化回Java对象。这对于进行Web服务开发或者需要与JSON格式数据交互的项目来说,是一个...
总之,JSON-lib是一个在老版本JDK环境下处理JSON数据的强大工具,通过它你可以方便地在Java对象和JSON格式之间进行转换,从而简化数据交换的过程。在项目中合理使用这些jar包,可以确保你的代码在兼容性方面表现良好...
JSON-Lib是Java平台上处理JSON的一种库,它提供了一种简单的方式来将Java对象转换为JSON格式,反之亦然。这个资源包包含了`json-lib.jar`,这是JSON-Lib的核心库,以及JSON的API文档,方便开发者查阅和使用。 `json...