java json需要什么包?使用json要导入什么包
大家好,今天小编来为大家解答java json需要什么包这个问题,使用json要导入什么包很多人还不知道,现在让我们一起来看看吧!
jsonarray用需要什么jar包
jsonarray所必需的6个jar包:
1、commons-beanutils-1.7.0.jar
2、commons-collections-3.1.jar
3、commons-lang-2.5.jar
4、commons-logging.jar
5、ezmorph-1.0.3.jar
6、json-lib-2.1-jdk15.jar
Jar文件属于一个存档文件,它是用ZIP格式构建的。Jar作为文件扩展名。用户可以使用JDK提供的jar命令创建或提取jar文件。您也可以使用其他zip压缩工具,但压缩时,zip文件头中条目的顺序很重要,因为清单文件通常需要放在第一位。
扩展资料:
可执行jar文件是存储在特殊配置的jar文件中的自包含Java应用程序,JVM可以直接执行该文件,而无需事先提取文件或设置类路径。运行存储在不可执行jar中的应用程序。
必须将其添加到类路径中,并按名称调用应用程序的主类。但是对于一个可执行的jar文件,我们可以运行一个应用程序,而无需提取它或知道主入口点。可执行jar有助于Java应用程序的发布和执行。
参考资源来源:
百度百科-jar
使用json要导入什么包
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。
这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(网络传输速率)。
使用json需要导入的包如下:
json-lib-2.3-jdk15.jar
commons-beanutils-1.7.0.jar
commons-httpclient-3.1.jar
commons-lang-2.3.jar
commons-logging-1.0.4.jar
commons-collections-3.1.jar
ezmorph-1.0.3.jar
java中如何将数据封装为JSON包
java中将数据封装为JSON包,可以使用java提供的jsonArray这个工具类进行转换,代码如下:
packagecom.json;
importjava.io.IOException;
importjava.util.ArrayList;
importjava.util.Collection;
importjava.util.HashMap;
importjava.util.Iterator;
importjava.util.List;
importjava.util.Map;
importjavax.servlet.http.HttpServletResponse;
importnet.sf.json.JSONArray;
importnet.sf.json.JSONObject;
importorg.apache.commons.beanutils.BeanUtils;
importorg.apache.struts2.ServletActionContext;
importcom.opensymphony.xwork2.ActionContext;
publicclassJSONUtils
{
/**
*
*@authorwangweiJSON工具类
*@param<T>
*
*/
/***
*将List对象序列化为JSON文本
*/
publicstatic<T>StringtoJSONString(List<T>list)
{
JSONArrayjsonArray=JSONArray.fromObject(list);
returnjsonArray.toString();
}
/***
*将对象序列化为JSON文本
*@paramobject
*@return
*/
publicstaticStringtoJSONString(Objectobject)
{
JSONArrayjsonArray=JSONArray.fromObject(object);
returnjsonArray.toString();
}
/***
*将JSON对象数组序列化为JSON文本
*@paramjsonArray
*@return
*/
publicstaticStringtoJSONString(JSONArrayjsonArray)
{
returnjsonArray.toString();
}
/***
*将JSON对象序列化为JSON文本
*@paramjsonObject
*@return
*/
publicstaticStringtoJSONString(JSONObjectjsonObject)
{
returnjsonObject.toString();
}
/***
*将对象转换为List对象
*@paramobject
*@return
*/
publicstaticListtoArrayList(Objectobject)
{
ListarrayList=newArrayList();
JSONArrayjsonArray=JSONArray.fromObject(object);
Iteratorit=jsonArray.iterator();
while(it.hasNext())
{
JSONObjectjsonObject=(JSONObject)it.next();
Iteratorkeys=jsonObject.keys();
while(keys.hasNext())
{
Objectkey=keys.next();
Objectvalue=jsonObject.get(key);
arrayList.add(value);
}
}
returnarrayList;
}
/***
*将对象转换为Collection对象
*@paramobject
*@return
*/
publicstaticCollectiontoCollection(Objectobject)
{
JSONArrayjsonArray=JSONArray.fromObject(object);
returnJSONArray.toCollection(jsonArray);
}
/***
*将对象转换为JSON对象数组
*@paramobject
*@return
*/
publicstaticJSONArraytoJSONArray(Objectobject)
{
returnJSONArray.fromObject(object);
}
/***
*将对象转换为JSON对象
*@paramobject
*@return
*/
publicstaticJSONObjecttoJSONObject(Objectobject)
{
returnJSONObject.fromObject(object);
}
/***
*将对象转换为HashMap
*@paramobject
*@return
*/
publicstaticHashMaptoHashMap(Objectobject)
{
HashMap<String,Object>data=newHashMap<String,Object>();
JSONObjectjsonObject=JSONUtils.toJSONObject(object);
Iteratorit=jsonObject.keys();
while(it.hasNext())
{
Stringkey=String.valueOf(it.next());
Objectvalue=jsonObject.get(key);
data.put(key,value);
}
returndata;
}
/***
*将对象转换为List<Map<String,Object>>
*@paramobject
*@return
*/
//返回非实体类型(Map<String,Object>)的List
publicstaticList<Map<String,Object>>toList(Objectobject)
{
List<Map<String,Object>>list=newArrayList<Map<String,Object>>();
JSONArrayjsonArray=JSONArray.fromObject(object);
for(Objectobj:jsonArray)
{
JSONObjectjsonObject=(JSONObject)obj;
Map<String,Object>map=newHashMap<String,Object>();
Iteratorit=jsonObject.keys();
while(it.hasNext())
{
Stringkey=(String)it.next();
Objectvalue=jsonObject.get(key);
map.put((String)key,value);
}
list.add(map);
}
returnlist;
}
/***
*将JSON对象数组转换为传入类型的List
*@param<T>
*@paramjsonArray
*@paramobjectClass
*@return
*/
publicstatic<T>List<T>toList(JSONArrayjsonArray,Class<T>objectClass)
{
returnJSONArray.toList(jsonArray,objectClass);
}
/***
*将对象转换为传入类型的List
*@param<T>
*@paramjsonArray
*@paramobjectClass
*@return
*/
publicstatic<T>List<T>toList(Objectobject,Class<T>objectClass)
{
JSONArrayjsonArray=JSONArray.fromObject(object);
returnJSONArray.toList(jsonArray,objectClass);
}
/***
*将JSON对象转换为传入类型的对象
*@param<T>
*@paramjsonObject
*@parambeanClass
*@return
*/
publicstatic<T>TtoBean(JSONObjectjsonObject,Class<T>beanClass)
{
return(T)JSONObject.toBean(jsonObject,beanClass);
}
/***
*将将对象转换为传入类型的对象
*@param<T>
*@paramobject
*@parambeanClass
*@return
*/
publicstatic<T>TtoBean(Objectobject,Class<T>beanClass)
{
JSONObjectjsonObject=JSONObject.fromObject(object);
return(T)JSONObject.toBean(jsonObject,beanClass);
}
/***
*将JSON文本反序列化为主从关系的实体
*@param<T>泛型T代表主实体类型
*@param<D>泛型D代表从实体类型
*@paramjsonStringJSON文本
*@parammainClass主实体类型
*@paramdetailName从实体类在主实体类中的属性名称
*@paramdetailClass从实体类型
*@return
*/
publicstatic<T,D>TtoBean(StringjsonString,Class<T>mainClass,
StringdetailName,Class<D>detailClass)
{
JSONObjectjsonObject=JSONObject.fromObject(jsonString);
JSONArrayjsonArray=(JSONArray)jsonObject.get(detailName);
TmainEntity=JSONUtils.toBean(jsonObject,mainClass);
List<D>detailList=JSONUtils.toList(jsonArray,detailClass);
try
{
BeanUtils.setProperty(mainEntity,detailName,detailList);
}
catch(Exceptionex)
{
thrownewRuntimeException("主从关系JSON反序列化实体失败!");
}
returnmainEntity;
}
/***
*将JSON文本反序列化为主从关系的实体
*@param<T>泛型T代表主实体类型
*@param<D1>泛型D1代表从实体类型
*@param<D2>泛型D2代表从实体类型
*@paramjsonStringJSON文本
*@parammainClass主实体类型
*@paramdetailName1从实体类在主实体类中的属性
*@paramdetailClass1从实体类型
*@paramdetailName2从实体类在主实体类中的属性
*@paramdetailClass2从实体类型
*@return
*/
publicstatic<T,D1,D2>TtoBean(StringjsonString,Class<T>mainClass,
StringdetailName1,Class<D1>detailClass1,StringdetailName2,
Class<D2>detailClass2)
{
JSONObjectjsonObject=JSONObject.fromObject(jsonString);
JSONArrayjsonArray1=(JSONArray)jsonObject.get(detailName1);
JSONArrayjsonArray2=(JSONArray)jsonObject.get(detailName2);
TmainEntity=JSONUtils.toBean(jsonObject,mainClass);
List<D1>detailList1=JSONUtils.toList(jsonArray1,detailClass1);
List<D2>detailList2=JSONUtils.toList(jsonArray2,detailClass2);
try
{
BeanUtils.setProperty(mainEntity,detailName1,detailList1);
BeanUtils.setProperty(mainEntity,detailName2,detailList2);
}
catch(Exceptionex)
{
thrownewRuntimeException("主从关系JSON反序列化实体失败!");
}
returnmainEntity;
}
/***
*将JSON文本反序列化为主从关系的实体
*@param<T>泛型T代表主实体类型
*@param<D1>泛型D1代表从实体类型
*@param<D2>泛型D2代表从实体类型
*@paramjsonStringJSON文本
*@parammainClass主实体类型
*@paramdetailName1从实体类在主实体类中的属性
*@paramdetailClass1从实体类型
*@paramdetailName2从实体类在主实体类中的属性
*@paramdetailClass2从实体类型
*@paramdetailName3从实体类在主实体类中的属性
*@paramdetailClass3从实体类型
*@return
*/
publicstatic<T,D1,D2,D3>TtoBean(StringjsonString,
Class<T>mainClass,StringdetailName1,Class<D1>detailClass1,
StringdetailName2,Class<D2>detailClass2,StringdetailName3,
Class<D3>detailClass3)
{
JSONObjectjsonObject=JSONObject.fromObject(jsonString);
JSONArrayjsonArray1=(JSONArray)jsonObject.get(detailName1);
JSONArrayjsonArray2=(JSONArray)jsonObject.get(detailName2);
JSONArrayjsonArray3=(JSONArray)jsonObject.get(detailName3);
TmainEntity=JSONUtils.toBean(jsonObject,mainClass);
List<D1>detailList1=JSONUtils.toList(jsonArray1,detailClass1);
List<D2>detailList2=JSONUtils.toList(jsonArray2,detailClass2);
List<D3>detailList3=JSONUtils.toList(jsonArray3,detailClass3);
try
{
BeanUtils.setProperty(mainEntity,detailName1,detailList1);
BeanUtils.setProperty(mainEntity,detailName2,detailList2);
BeanUtils.setProperty(mainEntity,detailName3,detailList3);
}
catch(Exceptionex)
{
thrownewRuntimeException("主从关系JSON反序列化实体失败!");
}
returnmainEntity;
}
/***
*将JSON文本反序列化为主从关系的实体
*@param<T>主实体类型
*@paramjsonStringJSON文本
*@parammainClass主实体类型
*@paramdetailClass存放了多个从实体在主实体中属性名称和类型
*@return
*/
publicstatic<T>TtoBean(StringjsonString,Class<T>mainClass,
HashMap<String,Class>detailClass)
{
JSONObjectjsonObject=JSONObject.fromObject(jsonString);
TmainEntity=JSONUtils.toBean(jsonObject,mainClass);
for(Objectkey:detailClass.keySet())
{
try
{
Classvalue=(Class)detailClass.get(key);
BeanUtils.setProperty(mainEntity,key.toString(),value);
}
catch(Exceptionex)
{
thrownewRuntimeException("主从关系JSON反序列化实体失败!");
}
}
returnmainEntity;
}
/**
*封装json数据从后台传输
*@paramobj
*/
publicstaticvoidoutPutJson(Objectobj){
ActionContextcontext=ActionContext.getContext();
HttpServletResponseresponse=(HttpServletResponse)context.get(ServletActionContext.HTTP_RESPONSE);
try{
response.getWriter().print(obj);
}catch(IOExceptione){
e.printStackTrace();
}
}
}
//测试类
Strings1="[{id:1,pId:0,name:\"test1\",open:true}]";
Strings2="{id:2,pId:1,name:\"test211\",open:true}";
Strings3="{id:3,pId:2,name:\"test311\",open:true}";
Strings4="{id:4,pId:1,name:\"test411\",open:true}";
List<String>listZtree=newArrayList<String>();
listZtree.add(s1);
listZtree.add(s2);
listZtree.add(s3);
listZtree.add(s4);
System.out.println(JSONUtils.toJSONString(listZtree));
}
关于java json需要什么包和使用json要导入什么包的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。