日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

一個java處理JSON格式數據的通用類收藏

系統 2234 0

/**?*/ /**
?*?Copyright?(c)?linkwise?2007-2009?corporation.??
?*?All?rights?reserved
?
*/

package ?com.linghui.common.util;

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;
import ?net.sf.json.util.CycleDetectionStrategy;

import ?com.linghui.common.util.DateUtil;
import ?com.linghui.common.util.jsonutil.DateJsonValueProcessor;

/**?*/ /**
?*?
@author ?</br>?<a?href="mailto:fx19800215@163.com">?robert.feng</a>
?*
?
*/

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
?????
*/

????
public ? static ?Date[]?getDateArray4Json(String?jsonString,String?DataFormat) ... {
????????
????????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.stringToDate(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();
????????
????????
????}

????
????
????
????
/**?*/ /**
?????*?
@param ?args
?????
*/

????
public ? static ? void ?main(String[]?args)? ... {
????????
// ?TODO?自動生成方法存根

????}

????
????
/**?*/ /**
?????*?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));???
http://images.csdn.net/syntaxhig

一個java處理JSON格式數據的通用類收藏


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 河北区| 射洪县| 尼玛县| 义马市| 武汉市| 都匀市| 鄯善县| 澜沧| 神池县| 乡宁县| 建瓯市| 玉山县| 新巴尔虎左旗| 资阳市| 林州市| 宁海县| 和政县| 普定县| 中山市| 华亭县| 阳山县| 隆昌县| 离岛区| 宁波市| 洪雅县| 方正县| 鹿邑县| 福贡县| 朝阳县| 溧阳市| 古丈县| 凯里市| 蕉岭县| 临潭县| 揭阳市| 万载县| 安义县| 平定县| 曲沃县| 凌云县| 普宁市|