项目中用到,写个demo方便copy
1、首先说明一点,json-lib 需要支持包
Json-lib requires (at least) the following dependencies in your classpath:
- jakarta commons-lang 2.5
- jakarta commons-beanutils 1.8.0
- jakarta commons-collections 3.2.1
- jakarta commons-logging 1.1.1
- ezmorph 1.0.6
上述都可以在http://json-lib.sourceforge.net/ 下得到
解析第一种格式,因为前台是使用jstl,所以后台处理就全部转换成JavaBean了,方便使用。
其中JavaBean必须为public的才ok,否则会报找不到setter 和 getter 方法,比较纠结。
/**
* java Bean
* @author wuya
*
*/
public class GgDw {
private String dwbh;
private String dwmc;
public String getDwbh() {
return dwbh;
}
public void setDwbh(String dwbh) {
this.dwbh = dwbh;
}
public String getDwmc() {
return dwmc;
}
public void setDwmc(String dwmc) {
this.dwmc = dwmc;
}
}
testcase 这里可以不看,上篇有个拼接json数据格式的方法需要用到
public class DBTest extends TestCase {
DBUtil db = new DBUtil();
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
JsonUtil json = new JsonUtil();
public void testGetConnect() throws SQLException {
con = db.getConnect();
stmt = con.createStatement();
rs = stmt.executeQuery("select dwbh,dwmc from gg_dw where dwbh<5");
String str = json.GetJsonByResultSet(rs, "result", 1);
System.out.println(str);
assertNotNull(str);
}
public void testJsonStringToBean() throws SQLException {
con = db.getConnect();
stmt = con.createStatement();
rs = stmt.executeQuery("select dwbh,dwmc from gg_dw where dwbh<5");
// String str = json.GetJsonByResultSet(rs, "result", 1);
String str1 = json.GetJsonByResultSet(rs, "result", 0);
System.out.println(str1);
// JsonLibParse.jsonStringToBeanMap(str);
JsonLibParse.jsonStringToBeanArray(str1);
}
}
解析使用json-lib 注意 GgDw必须为public class
* json格式的sring 解析
* {result:[ {dwbh:"1",dwmc:"有限公司"}]}
* @param jsonString
*/
public static void jsonStringToBeanMap(String jsonString) {
Map classMap = new HashMap();
classMap.put("result", GgDw.class);
Result result = (Result) JSONObject.toBean(JSONObject
.fromObject(jsonString), Result.class, classMap);
for (Object o : result.getResult()) {
System.out.println(((GgDw) o).getDwbh());
System.out.println(((GgDw) o).getDwmc());
}
}
这个是转换包含Array形式的数据格式
// {result:[
// {id:0,data:["","1","有限公司1"]},
// {id:1,data:["","2","有限公司2"]},
// {id:2,data:["","3","有限公司3"]},
// {id:3,data:["","4","有限公司4"]}
// ]}
public static void jsonStringToBeanArray(String jsonString) {
JSONObject js = JSONObject.fromObject(jsonString);
JSONArray jsonArray = js.getJSONArray("result");
for(int i=0;i<jsonArray.size();i++){
JSONObject json = jsonArray.getJSONObject(i);
System.out.println(jsonArray.getJSONObject(i).getString("id"));
String temp = jsonArray.getJSONObject(i).getString("data");
JSONArray js1 = JSONArray.fromObject(temp);
for (Object string : js1.toArray()) {
System.out.println(string);
}
}
}
项目中就可以简单使用了,完全满足项目使用要求。
分享到:
相关推荐
它可以将Java对象转换成JSON字符串,也可以将JSON字符串转换成Java对象。json-lib体积小、无依赖,性能表现也不错,适合在各种Java项目中使用。 json-lib的主要功能有: 1. 简单易用:json-lib的API简单易于使用,一般只...
同样,也可以将JSON字符串解析为相应的Java对象。 2. **兼容性**:`-jdk15.jar`表明这个版本是为Java 1.5设计的,意味着它可以很好地运行在较旧的JVM上,这对于那些无法升级到更高版本Java的项目来说是非常有用的。...
在Java世界里,`json-lib-2.1.jar` 是一个用于处理JSON的库,它提供了一系列的方法来将Java对象转换为JSON格式,以及将JSON字符串反序列化回Java对象。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java...
通过使用json-lib,开发者可以避免手动编写繁琐的JSON字符串拼接代码,提高开发效率和代码的可读性。 然而,随着技术的发展,虽然json-lib在当时是一个流行的JSON处理库,但现在已有其他更先进的替代品,如Gson、...
标题中的“使用json-lib将java对象转换成json字符串”指的是在Java编程中,利用json-lib这个库来将Java对象转化为JSON格式的字符串。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端...
例如,你可以将一个Java的HashMap转换成JSON格式,便于在网络上传输,或者将接收到的JSON字符串解析成Java对象,便于进一步处理。 ```java Map, String> map = new HashMap(); map.put("key1", "value1"); map.put...
JSON-lib是Java平台上的一个库,它提供了一种方便的方式来序列化和反序列化Java对象为JSON格式,以及从JSON字符串恢复Java对象。这个库在处理JSON数据时非常实用,特别是对于那些需要在服务器端和客户端之间进行数据...
要将 `Person` 对象转换为 JSON 字符串,可以使用 `JsonBeanSerializer`: ```java Person person = new Person(); person.setName("John"); person.setAge(30); JSONSerializer jsonSerializer = new ...
4. 如果需要将JSON字符串反序列化回Java对象,可以使用`JSONObject.toBean()`或`JSONArray.toList()`方法。 在项目中,`lib`目录下的json-lib-2.3.jar文件应当被正确地添加到构建路径或依赖管理中,以确保程序能够...
1. **JSON转换**:`json-lib`提供了将Java对象如Map、List、自定义类等转换为JSON字符串的方法,同时也支持将JSON字符串解析为相应的Java对象。这在处理前后端交互或者存储和传输数据时非常有用。 2. **XML与JSON互...
1. 将Java对象(如:数组、集合、Map、自定义对象等)转换为JSON字符串。 2. 将JSON字符串反序列化回对应的Java对象。 3. 提供了多种数据类型转换的API,支持不同数据结构间的转换。 4. 支持XML与JSON之间的转换,...
`json-lib-0.8.jar`是JSON-lib的0.8版本,它可能包含基础的JSON转换功能,如将Java对象转换为JSON字符串,以及反向操作,即将JSON字符串解析回Java对象。此外,它可能还支持JSON数组和JSON对象的创建、读取和修改。...
1. **JSON到Java对象转换**:通过JsonNode、JSONArray和JSONObject等类,json-lib可以解析JSON字符串并生成对应的Java对象。例如,一个JSON对象可以被映射为一个HashMap,而一个JSON数组则可以转换为ArrayList。 2....
`json-lib`是一个Java库,它提供了将Java对象转换为JSON格式,以及从JSON字符串反序列化回Java对象的功能。`json-lib-2.3-jdk15`是这个库的一个特定版本,兼容JDK 1.5,这意味着它可以在运行JDK 1.5或更高版本的Java...
在Java开发中,`json-lib`库提供了多种将Java对象序列化为JSON字符串的方法,包括: 1. **Java Bean到JSON**: 只需传入一个Java Bean对象,`json-lib`就能将其转换为JSON格式的字符串。 2. **Map到JSON**: 对于包含...
- **数据存储**:在持久化框架如Hibernate中,JSON Lib可以用于将Java对象转换成JSON字符串,方便存储到数据库的JSON字段。 - **前端交互**:后端开发中,通过JSON格式与前端JavaScript进行数据交互,JSON Lib简化了...
综上所述,`json-lib`依赖于这些库来提供完整的JSON转换功能,从Java对象到JSON字符串的序列化,以及从JSON字符串到Java对象的反序列化。在实际开发中,通过这些库的配合,开发者可以轻松地在服务器和客户端之间传递...
这个库包含了处理JSON的多种功能,包括将Java对象转换为JSON字符串,以及将JSON文本解析回相应的Java对象。这对于开发人员来说是非常有用的,因为它允许他们在Java程序中轻松地序列化和反序列化数据。 在Java中,...
在Java中,处理JSON通常涉及两个主要任务:将Java对象转换为JSON字符串(序列化),以及将JSON字符串解析回Java对象(反序列化)。JSON-lib.jar提供了这样的功能,使得开发者能够方便地在Java对象和JSON格式之间进行...
- JSON格式验证:json-lib提供API来检查JSON字符串的合法性。 - JSON格式化:可以对JSON字符串进行美化输出,提高可读性。 - JSONPath支持:类似于XPath,JSONPath允许提取JSON文档中的特定数据。 5. **性能比较...