首页天道酬勤java map转json字符串,json对象转java对象

java map转json字符串,json对象转java对象

admin 05-05 13:52 166次浏览

java处理JSON格式数据的通用类

因为要进入项目,必须在java中处理json格式的数据,所以封装class并与大家共享此class/* * * copyright (c ) linkwise 2007-2009公司

* all rights reserved */package com.linghui.com mon.util; importjava.util.ArrayList; importjava.util.Date; importjava.util.HashMap; importjava.util.Iterator; importjava.util.List; importjava.util.Map; importnet.sf.json.JSONArray; importnet.sf.json.JSONObject; importnet.sf.json.JsonConfig; import net.SF.JSON.util.cycledetectionstrategy; import com.linghui.com mon.util.date util; import com.linghui.com mon.util.JSON util.datejsonvalueprocessor; /***@authorrobert.feng

*/publicclassjsonutil {/* * *从JSON对象的字符格式中检索java对象

*@paramjsonString

*@parampojoCalss

* @ return */publicstaticobjectgetobject4JSON string (stringjsonstring,ClasspojoCalss ) {

对象POJO;

jonobjectjsonobject=JSON object.from object (JSON字符串);

POJO=JSON object.to bean (JSON object,pojoCalss ); 返回坡焦;

}/* * *从JSON hash表达式中检索map,并将其更改为支持嵌套功能

*@paramjsonString

* @ return */publicstaticmapgetmap4JSON (stringjsonstring )。

jonobjectjsonobject=JSON object.from object (JSON字符串);

iteratorkeyiter=JSON object.keys (;

字符串密钥;

对象值;

MapvalueMap=newHashMap (; while(keyiter.Hasnext ) )

{

key=(字符串) keyIter.next );

value=JSONobject.get(key );

value map.put (密钥,value );

}returnvalueMap;

}/* * *从JSON数组中获取对应的java数组

*@paramjsonString

* @ return */public static object [ ] getobject array4JSON (stringjsonstring ) {

jsonarrayjsonarray=JSON array.from object (JSON字符串; returnjsonArray.toArray (;

}/* * *从JSON对象集合表达式中获取java对象的列表

*@paramjsonString

*@parampojoClass

* @ return */publicstaticlistgetlist4JSON (stringjsonstring,ClasspojoClass ) {

jsonarrayjsonarray=JSON array.from object (JSON字符串;

JSONObjectjsonObject;

对象pojovalue;

列表列表=new ArrayList (; for(inti=0; I

JSON object=JSON array.getjsonobject (I;

POJO value=JSON object.to bean (JSON object,pojoClass );

list.add(Pojovalue );

}返回列表;

}/* * *从JSON数组中分析java字符串数组

*@paramjsonString

* @ return */public static string [ ] getstring array4JSON (stringjsonstring ) {

JSONArrayjsonArray=JSO

NArray.fromObject(jsonString);

String[] stringArray=newString[jsonArray.size()];for(inti=0; i

stringArray[i]=jsonArray.getString(i);

}returnstringArray;

}/*** 从json数组中解析出javaLong型对象数组

*@paramjsonString

*@return*/publicstaticLong[] getLongArray4Json(String jsonString){

JSONArray jsonArray=JSONArray.fromObject(jsonString);

Long[] longArray=newLong[jsonArray.size()];for(inti=0; i

longArray[i]=jsonArray.getLong(i);

}returnlongArray;

}/*** 从json数组中解析出java Integer型对象数组

*@paramjsonString

*@return*/publicstaticInteger[] getIntegerArray4Json(String jsonString){

JSONArray jsonArray=JSONArray.fromObject(jsonString);

Integer[] integerArray=newInteger[jsonArray.size()];for(inti=0; i

integerArray[i]=jsonArray.getInt(i);

}returnintegerArray;

}/*** 从json数组中解析出java Date 型对象数组,使用本方法必须保证

*@paramjsonString

*@return*/publicstaticDate[] getDateArray4Json(String jsonString,String DataFormat){

JSONArray jsonArray=JSONArray.fromObject(jsonString);

Date[] dateArray=newDate[jsonArray.size()];

String dateString;

Date date;for(inti=0; i

dateString=jsonArray.getString(i);

date=DateUtil.stringToDate(dateString, DataFormat);

dateArray[i]=date;

}returndateArray;

}/*** 从json数组中解析出java Integer型对象数组

*@paramjsonString

*@return*/publicstaticDouble[] getDoubleArray4Json(String jsonString){

JSONArray jsonArray=JSONArray.fromObject(jsonString);

Double[] doubleArray=newDouble[jsonArray.size()];for(inti=0; i

doubleArray[i]=jsonArray.getDouble(i);

}returndoubleArray;

}/*** 将java对象转换成json字符串

*@paramjavaObj

*@return*/publicstaticString getJsonString4JavaPOJO(Object javaObj){

JSONObject json;

json=JSONObject.fromObject(javaObj);returnjson.toString();

}/*** 将java对象转换成json字符串,并设定日期格式

*@paramjavaObj

*@paramdataFormat

*@return*/publicstaticString getJsonString4JavaPOJO(Object javaObj , String dataFormat){

JSONObject json;

JsonConfig jsonConfig=configJson(dataFormat);

json=JSONObject.fromObject(javaObj,jsonConfig);returnjson.toString();

}/***@paramargs*/publicstaticvoidmain(String[] args) {//TODO 自动生成方法存根}/*** JSON 时间解析器具

*@paramdatePattern

*@return*/publicstaticJsonConfig configJson(String datePattern) {

JsonConfig jsonConfig=newJsonConfig();

jsonConfig.setExcludes(newString[]{""});

jsonConfig.setIgnoreDefaultExcludes(false);

jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);

jsonConfig.registerJsonValueProcessor(Date.class,newDateJsonValueProcessor(datePattern));returnjsonConfig;

}/***@paramexcludes

*@paramdatePattern

*@return*/publicstaticJsonConfig configJson(String[] excludes, String datePattern) {

JsonConfig jsonConfig=newJsonConfig();

jsonConfig.setExcludes(excludes);

jsonConfig.setIgnoreDefaultExcludes(false);

jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);

jsonConfig.registerJsonValueProcessor(Date.class,newDateJsonValueProcessor(datePattern));returnjsonConfig;

}

}/*** linkwise*/packagecom.linghui.common.util.jsonutil;importjava.text.DateFormat;importjava.text.SimpleDateFormat;importjava.util.Date;importnet.sf.json.JsonConfig;importnet.sf.json.processors.JsonValueProcessor;/***@authorrobert.feng

**/publicclassDateJsonValueProcessorimplementsJsonValueProcessor {publicstaticfinalString DEFAULT_DATE_PATTERN="yyyy-MM-dd";privateDateFormat dateFormat;/*** 构造方法.

*@paramdatePattern 日期格式*/publicDateJsonValueProcessor(String datePattern) {if(null==datePattern )

dateFormat=newSimpleDateFormat(DEFAULT_DATE_PATTERN);elsedateFormat=newSimpleDateFormat(datePattern);

}/*(非 Javadoc)

* @see net.sf.json.processors.JsonValueProcessor#processArrayValue(java.lang.Object, net.sf.json.JsonConfig)*/publicObject processArrayValue(Object arg0, JsonConfig arg1) {//TODO 自动生成方法存根returnprocess(arg0);

}/*(非 Javadoc)

* @see net.sf.json.processors.JsonValueProcessor#processObjectValue(java.lang.String, java.lang.Object, net.sf.json.JsonConfig)*/publicObject processObjectValue(String arg0, Object arg1, JsonConfig arg2) {//TODO 自动生成方法存根returnprocess(arg1);

}privateObject process(Object value) {returndateFormat.format((Date) value);

}

}

PHPheader()函数常用方法总结毕业设计 - 题目:基于stm32的车牌识别系统设计创建过程
json解析错误,java解析json数组 java生成json文件,Java解析json
相关内容