版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、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 net.sf.json.JSONArray;import net.sf.json.JSONObject;import net.sf.json.JsonConfig
2、;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 getObject4Js
3、onString(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) J
4、SONObject 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数组中得到相应jav
5、a数组 * * 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(Strin
6、g 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
7、(pojoValue); return list; /* * 从json数组中解析出java字符串数组 * * param jsonString * return */ public static String getStringArray4Json(String jsonString) JSONArray jsonArray = JSONArray.fromObject(jsonString); String stringArray = new StringjsonArray.size(); for (int i = 0; i jsonArray.size(); i+) stringArra
8、yi = jsonArray.getString(i); return stringArray; /* * 从json数组中解析出javaLong型对象数组 * * param jsonString * return */ public static Long getLongArray4Json(String jsonString) JSONArray jsonArray = JSONArray.fromObject(jsonString); Long longArray = new LongjsonArray.size(); for (int i = 0; i jsonArray.size(
9、); i+) longArrayi = 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 IntegerjsonArray.size(); for
10、 (int i = 0; i jsonArray.size(); i+) integerArrayi = jsonArray.getInt(i); return integerArray; /* * 从json数组中解析出java Date 型对象数组,使用本方法必须保证 * * param jsonString * return * throws ParseException */ public static Date getDateArray4Json(String jsonString, String DataFormat) throws ParseException JSONArray
11、 jsonArray = JSONArray.fromObject(jsonString); Date dateArray = new DatejsonArray.size(); String dateString; Date date; for (int i = 0; i jsonArray.size(); i+) dateString = jsonArray.getString(i); date = DateUtil.parseDate(dateString, DataFormat); dateArrayi = date; return dateArray; /* * 从json数组中解析
12、出java Integer型对象数组 * * param jsonString * return */ public static Double getDoubleArray4Json(String jsonString) JSONArray jsonArray = JSONArray.fromObject(jsonString); Double doubleArray = new DoublejsonArray.size(); for (int i = 0; i jsonArray.size(); i+) doubleArrayi = jsonArray.getDouble(i); retu
13、rn 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 stat
14、ic 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(Strin
15、g datePattern) JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(new String ); jsonConfig.setIgnoreDefaultExcludes(false); jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor(datePattern); r
16、eturn jsonConfig; /* * 除去不想生成的字段(特别适合去掉级联的对象)+时间转换 * param excludes 除去不想生成的字段 * param datePattern * return */ public static JsonConfig configJson(String excludes, String datePattern) JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(excludes); jsonConfig.setIgnoreDefaultExcludes(true)
17、; jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); jsonConfig.registerJsonValueProcessor(Date.class, new JsonDateValueProcessor(datePattern); return jsonConfig; *日期转换*package com.baiyyy.polabs.util.json; import java.text.SimpleDateFormat; import java.util.Date; import net.sf.jso
18、n.JsonConfig; import cessors.JsonValueProcessor; /* * * author yongtree * date 2008-11-22 上午10:54:19 * version 1.0 */ public class JsonDateValueProcessor implements JsonValueProcessor private String format = yyyy-MM-dd HH:mm:ss; public JsonDateValueProcessor() public JsonDateValueProcessor(String format) this.format = format; public Object proce
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026浙江台州市温岭市滨海镇招聘编外工作人员1人备考题库及参考答案详解(培优b卷)
- 2026年安徽省蚌埠市高职单招职业技能考试题库及答案详细解析
- 2025-2026学年爱惜文具教案
- 某印染厂废水处理操作细则
- 7.3.2生物进化的历程教学设计-2023-2024学年人教版生物八年级下册
- 2026年重庆人文科技学院单招职业适应性测试题库有答案详细解析
- 2026年镇江市高等专科学校单招综合素质考试题库有答案详细解析
- 某饮料厂生产流程操作细则
- 2026年乌兰察布职业学院单招职业适应性测试题库含答案详细解析
- 2026浙江杭州市翠苑第二小学招聘语文教师(非事业)1人考试参考试题及答案解析
- 2025年苏州健雄职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 化工企业安全隐患排查表
- 2024届新高考语文高中古诗文必背72篇 【原文+注音+翻译】
- 第五讲铸牢中华民族共同体意识-2024年形势与政策
- 组织工程学(新)
- 2023年胎膜早破的诊断和处理指南
- 府谷县新民镇丈八崖联办煤矿矿山地质环境保护与土地复垦方案
- 部队保密安全教育课件
- 交通基础设施智能建造技术探索与发展交流
- 计算机网络实验指导(郑宏等编著 华为)课件PPT(计算机网络实验指导)
- 国家基本药物培训
评论
0/150
提交评论