- 浏览: 177241 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
mamaoyuan625:
好的,谢谢你的支持
struts2+ibatis+spring -
mamaoyuan625:
好的 谢谢了
struts2+ibatis+spring -
mamaoyuan625:
lucane 写道你好--4.总分前三的所有学生名单(包括并列 ...
sql关于求成绩的面试题 -
ganbo:
...
spring中CGLIB代理(CGLIB字节码) -
老糊涂:
学习了 谢谢分享
struts2+ibatis+spring
package com.baiyyy.polabs.util.json; import java.text.ParseException; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import com.baiyyy.polabs.util.DateUtil; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import net.sf.json.JsonConfig; import net.sf.json.util.CycleDetectionStrategy; /** * 处理json的工具类,负责json数据转换成java对象和java对象转换成json * * @author yongtree * @date 2008-11-22 上午10:47:13 * @version 1.0 */ public class JsonUtil { /** * 从一个JSON 对象字符格式中得到一个java对象 * * @param jsonString * @param pojoCalss * @return */ public static Object getObject4JsonString(String jsonString, Class pojoCalss) { Object pojo; JSONObject jsonObject = JSONObject.fromObject(jsonString); pojo = JSONObject.toBean(jsonObject, pojoCalss); return pojo; } /** * 从json HASH表达式中获取一个map,改map支持嵌套功能 * * @param jsonString * @return */ public static Map getMap4Json(String jsonString) { JSONObject jsonObject = JSONObject.fromObject(jsonString); Iterator keyIter = jsonObject.keys(); String key; Object value; Map valueMap = new HashMap(); while (keyIter.hasNext()) { key = (String) keyIter.next(); value = jsonObject.get(key); valueMap.put(key, value); } return valueMap; } /** * 从json数组中得到相应java数组 * * @param jsonString * @return */ public static Object[] getObjectArray4Json(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); return jsonArray.toArray(); } /** * 从json对象集合表达式中得到一个java对象列表 * * @param jsonString * @param pojoClass * @return */ public static List getList4Json(String jsonString, Class pojoClass) { JSONArray jsonArray = JSONArray.fromObject(jsonString); JSONObject jsonObject; Object pojoValue; List list = new ArrayList(); for (int i = 0; i < jsonArray.size(); i++) { jsonObject = jsonArray.getJSONObject(i); pojoValue = JSONObject.toBean(jsonObject, pojoClass); list.add(pojoValue); } return list; } /** * 从json数组中解析出java字符串数组 * * @param jsonString * @return */ public static String[] getStringArray4Json(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); String[] stringArray = new String[jsonArray.size()]; for (int i = 0; i < jsonArray.size(); i++) { stringArray[i] = jsonArray.getString(i); } return stringArray; } /** * 从json数组中解析出javaLong型对象数组 * * @param jsonString * @return */ public static Long[] getLongArray4Json(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); Long[] longArray = new Long[jsonArray.size()]; for (int i = 0; i < jsonArray.size(); i++) { longArray[i] = jsonArray.getLong(i); } return longArray; } /** * 从json数组中解析出java Integer型对象数组 * * @param jsonString * @return */ public static Integer[] getIntegerArray4Json(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); Integer[] integerArray = new Integer[jsonArray.size()]; for (int i = 0; i < jsonArray.size(); i++) { integerArray[i] = jsonArray.getInt(i); } return integerArray; } /** * 从json数组中解析出java Date 型对象数组,使用本方法必须保证 * * @param jsonString * @return * @throws ParseException */ public static Date[] getDateArray4Json(String jsonString, String DataFormat) throws ParseException { JSONArray jsonArray = JSONArray.fromObject(jsonString); Date[] dateArray = new Date[jsonArray.size()]; String dateString; Date date; for (int i = 0; i < jsonArray.size(); i++) { dateString = jsonArray.getString(i); date = DateUtil.parseDate(dateString, DataFormat); dateArray[i] = date; } return dateArray; } /** * 从json数组中解析出java Integer型对象数组 * * @param jsonString * @return */ public static Double[] getDoubleArray4Json(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); Double[] doubleArray = new Double[jsonArray.size()]; for (int i = 0; i < jsonArray.size(); i++) { doubleArray[i] = jsonArray.getDouble(i); } return doubleArray; } /** * 将java对象转换成json字符串 * * @param javaObj * @return */ public static String getJsonString4JavaPOJO(Object javaObj) { JSONObject json; json = JSONObject.fromObject(javaObj); return json.toString(); } /** * 将java对象转换成json字符串,并设定日期格式 * * @param javaObj * @param dataFormat * @return */ public static String getJsonString4JavaPOJO(Object javaObj, String dataFormat) { JSONObject json; JsonConfig jsonConfig = configJson(dataFormat); json = JSONObject.fromObject(javaObj, jsonConfig); return json.toString(); } /** * 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 JsonDateValueProcessor(datePattern)); return jsonConfig; } /** * 除去不想生成的字段(特别适合去掉级联的对象)+时间转换 * @param excludes 除去不想生成的字段 * @param datePattern * @return */ public static JsonConfig configJson(String[] excludes, String datePattern) { JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(excludes); jsonConfig.setIgnoreDefaultExcludes(true); jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor(datePattern)); return jsonConfig; } }
转自:http://yongtree.iteye.com/blog/274087
发表评论
-
JavaScript date的比较
2009-10-21 21:54 1722项目开发中往往要在js中进行date的比较 if(Date. ... -
JavaScript总结
2009-09-16 21:59 1387javascript事件查询综合 click() 对象.cl ... -
通用验证javascript
2009-09-16 21:52 806//****************VARIABLE DESC ... -
jstl 强大的日期处理(转)
2009-09-16 21:50 829JSP Standard Tag Libraries For ... -
JavaScript内置函数
2009-09-16 21:46 15261.document.write(""); ... -
jquery offset 方法
2009-09-16 20:51 4434获取匹配元素在当前视口的相对偏移。返回的对象包含两个 ... -
JavaScript中reload和replace的区别
2009-09-05 00:16 6243reload 方法,该方法强迫浏览器刷新当前页面。语 ... -
好东西
2009-09-04 16:31 690jquery书: http://book.51cto.com/ ... -
jquery学习(4) remove方法
2009-08-24 22:12 2277<!DOCTYPE html PUBLIC " ... -
jquey学习(3)----jquery的checkbox 与select简单应用
2009-08-24 13:20 2287<script src="jquery-1.3 ... -
jquey学习(2)----jquery最简单的隔行高亮显示
2009-08-24 11:45 1022//前提是你要导入jquery的库 $(function() ... -
jquey学习(1)----jquery与dom
2009-08-23 21:38 801//jquery 方式 $(function(){ v ... -
jquery的ready方法的几种使用方式
2009-08-23 16:39 1090//最常用的方式 $(document).ready(fun ... -
jquery如何对js动态产生的表格行高亮显示
2009-08-22 16:17 3403前几天本人在用jquery的时候, 鼠标移到table上的td ... -
jquery的显示日期时间的插件
2009-08-21 13:56 7275用法:<div id ="divTime&qu ... -
JavaScript的输入输出
2009-08-21 13:38 889二、简单的输入、输出 ... -
JavaScript函数(一)
2009-08-21 13:30 795软件界面采用WEB界面,因此要用到Javascript.一些通 ... -
javaScript常用的语句
2009-08-21 13:25 8271. document.write( &quo ... -
jquery的使用:鼠标移过高亮显示
2009-08-05 23:42 3755既然是要学习jquery,当 ... -
jquery、Ajax、struts的集成
2009-07-25 11:01 2985本人在网上使劲的搜索关于Ajax与jquery的集成,始终很 ...
相关推荐
Java操作JSON的核心在于使用相关的库来解析、生成和操作JSON对象。本篇将详细讲解如何在Java中处理JSON,以及如何使用提供的jar包。 首先,Java处理JSON主要依赖于第三方库,如Jackson、Gson、org.json或json-...
总结来说,Java处理JSON格式数据的通用类主要是为了方便JSON数据的序列化和反序列化,以及在Java应用中便捷地操作和传输JSON数据。通过使用合适的JSON处理库和自定义工具类,可以提高开发效率,使JSON数据的处理更加...
3. JSON-P(Java API for JSON Processing):这是Java标准API的一部分,提供了一种通用的方式来处理JSON。它包括一个解析器(Parser)用于读取JSON,一个生成器(Generator)用于写入JSON,以及一个模型(Model)来...
Java 处理 JSON 格式数据的通用类 Java 处理 JSON 格式数据的通用类是 Java 语言中处理 JSON 格式数据的常用方法。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它具有易于人阅读和编写、易于...
在Java中,解析JSON通常涉及到将JSON字符串转换成Java对象,以便于程序能够更方便地操作这些数据。 ### JSON库的使用 文档提到使用`json-lib.jar`开发包来解析JSON。`json-lib`是一个开源的Java库,用于处理JSON...
### Java处理JSON格式数据的通用类详解 #### 概述 在现代软件开发过程中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式被广泛采用。它基于JavaScript的一个子集,采用完全独立于编程语言的...
此外,`org.apache.commons.lang3`的`commons-lang3.jar`虽然不是直接处理JSON的库,但它是Apache Commons项目的一部分,提供了一系列通用的Java工具类,有时候在处理JSON时可能会用到。 最后,`...
7. **org.apache.commons.lang3**: 这个库可能包含了一些通用的Java工具类,虽然不是直接用于JSON处理,但在处理JSON时可能会用到,比如字符串操作、类型转换等。 在Java工程中引入这些Jar包后,开发者可以轻松地在...
Java 处理 JSON 格式数据的通用类 在 Java 开发中,处理 JSON 格式数据是非常常见的操作。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Java 提供...
4. **commons-lang.jar**:Apache Commons Lang是Apache Commons项目的一部分,提供了一系列高级的字符串处理、数学运算以及通用的Java类扩展。在JSON处理中,这个库可以辅助进行字符串的格式化、比较、解析等操作,...
这两个类提供了许多方便的方法,如获取、添加、修改和删除JSON元素,使得在Java中操作JSON变得简单易行。 例如,你可以使用`JSONObject`的构造函数创建一个空的对象,然后通过`put()`方法添加键值对: ```java ...
这个库包含了各种实用的集合类,如双向映射、堆和优先队列,以及各种通用的操作工具,如列表工厂和迭代器工具,这些在处理JSON时可能作为辅助工具使用,尤其是在进行数据转换时。 `commons-lang-2.5.jar`是Apache ...
Java中的`javajson`包,就是为了让Java开发者能够方便地处理JSON数据,将Java对象转换为JSON字符串,或者将JSON字符串解析为Java对象。 在给定的压缩包文件中,我们看到几个关键的库文件,这些是`javajson`包正常...
在实际项目中,这样的工具类可以帮助开发者快速有效地进行JSON与Java对象之间的转换。 在使用`json-lib`时,你需要导入相关的jar包,并且可以调用其提供的API来进行操作。例如,你可以使用`net.sf.json.JSONObject`...
在Java编程中,工具类(Util Classes)是程序员日常工作中不可或缺的部分,它们提供了一系列静态方法,用于执行常见的任务,如JSON解析、日期处理、字符串操作等。以下是对标题和描述中涉及的知识点的详细说明: 1....