package com.yaodaqing.json.test;
import net.sf.json.JSON;
import net.sf.json.JSONObject;
import net.sf.json.xml.XMLSerializer;
/**
* JAVABean_XML_JSON相互转换
*
* @author 姚大庆
*
* 2012年4月23日11:24:48
*/
public class JAVABean_XML_JSON {
public static void main(String args[]) {
// javaToJSON();
// jsonToJAVA();
// jsonToXML();
// javaBeanToJSON();
// javaBeanToXML();
// xmlToJSON();
jsonToJAVABean();
// xmlToJAVABean();
}
/**
* JSON格式转JAVA
*/
public static void jsonToJAVA() {
System.out.println("json字符串转java代码");
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
String username = jsonObj.getString("username");
String password = jsonObj.optString("password");
//在这里一个属性一个属性的设置到JAVABean中
System.out.println("json--->java\n username=" + username + "\t password=" + password);
}
/**
* JSON格式转XML格式
*/
public static void jsonToXML() {
System.out.println("json字符串转xml字符串");
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject json = JSONObject.fromString(jsonStr);
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setRootName("user_info");
xmlSerializer.setTypeHintsEnabled(false);
String xml = xmlSerializer.write(json);
System.out.println("json--->xml \n" + xml);
}
/**
* JSON格式直接转JAVABean
*/
@SuppressWarnings("static-access")
public static void jsonToJAVABean(){
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
UserInfo user = (UserInfo) jsonObj.toBean(jsonObj,UserInfo.class);
System.out.println(user.getPassword());
System.out.println(user.getUsername());
}
/**
* XML文件转JSON格式
*/
public static void xmlToJSON() {
System.out.println("xml字符串转json字符串");
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><user_info><password>123456</password><username>张三</username></user_info>";
JSON json = XMLSerializer.read(xml);
System.out.println("xml--->json \n" + json.toString());
}
/**
* XML直接转JAVABean
*/
public static void xmlToJAVABean(){
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><user_info><password>123456</password><username>张三</username></user_info>";
System.out.println("xml=="+xml);
JSON json = XMLSerializer.read(xml);
JSONObject jsonObj = JSONObject.fromString(json.toString());
System.out.println("json=="+json.toString());
UserInfo user = (UserInfo) jsonObj.toBean(jsonObj,UserInfo.class);
System.out.println(user.getPassword());
System.out.println(user.getUsername());
}
/**
* JAVABean转JSON格式
*/
public static void javaBeanToJSON() {
System.out.println("javabean转json字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("123456");
JSONObject json = JSONObject.fromBean(userInfo);
System.out.println("javabean--->json \n" + json.toString());
}
/**
* JAVABean转XML格式
*/
public static void javaBeanToXML() {
System.out.println("javabean转xml字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("123456");
JSONObject json = JSONObject.fromBean(userInfo);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json, "UTF-8");
System.out.println("javabean--->xml \n" + xml);
}
/**
* JAVA转JSON格式
*/
public static void javaToJSON() {
System.out.println("java代码封装为json字符串");
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", "张三");
jsonObj.put("password", "123456");
System.out.println("java--->json \n" + jsonObj.toString());
}
/**
* JSON 格式转 List
*/
@SuppressWarnings("rawtypes")
public static List jsonToListObject(String jsonString, Class clazz) {
List lists = new ArrayList();
JSONArray jsonArray = JSONArray.fromObject(jsonString);
// Object[] obj = new Object[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
// obj[i] = JSONObject.toBean(jsonObject, clazz);
lists.add(JSONObject.toBean(jsonObject, clazz));
}
return lists;
}
/**
* List 格式转 JSON
*/
//ObjectTest是自己定义的一个javabean,输出部分的属性都是JAVABean中的
List ot = jsonToListObject(jsonString, ObjectTest.class);
JSONObject jo = new JSONObject();
jo.put("jo", ot);
System.out.println(jo.toString());
//输出格式是:{"jo":[{"val":2.51,"name":"苏EA0002","mark":"high"},{"val":2.32,"name":"苏EA0001","mark":"low"},{"val":2.18,"name":"苏EA0003","mark":"low"}]}
}
package com.yaodaqing.json.test;
public class UserInfo {
public String username;
public String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
分享到:
相关推荐
**XStream:JavaBean与XML/JSON之间的转换大师** XStream是一个开源库,它为Java对象提供了简单且直观的XML序列化和反序列化的解决方案。它不仅能够将Java对象转换成XML,反之亦然,还能支持JSON格式的转换。这个...
JavaBean和Map以及String与JSON之间的转换在Java开发中是非常常见的操作。这涉及到Java对象的序列化和反序列化,通常用于数据交换或持久化存储。以下是对这些转换的详细解释和示例。 1. JavaBean到JSON JavaBean是...
XStream示例代码,JavaBean与XML,JSON之间互相转换(包含完整jar包)jettison-1.3.3.jar、xmlpull-1.1.3.1.jar、xstream-1.4.7.jar
同样,使用Jackson库,我们可以使用`JsonNode`对象的`toPrettyString()`方法将JSON转换为XML: ```java import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; ...
本文将深入探讨这一主题,介绍如何通过工具类实现JavaBean到XML以及XML到JavaBean的转换。 首先,JavaBean是一种遵循特定规则的Java类,它通常代表业务对象,具有getter和setter方法,用于封装数据。而XML...
XStream还支持JSON转换,但默认不是启用的,需要额外配置。 5. **Apache Commons BeanUtils** Apache Commons BeanUtils是Apache软件基金会的一个项目,提供了一套方便的JavaBean操作工具。虽然它主要用于Bean...
4. **XStream与JSON转换** XStream不仅支持XML,还内置了对JSON的支持。只需添加额外的转换器,如使用Jettison库,即可实现JavaBean与JSON的转换。 5. **实战演示** 在`xmlAnalysis`文件夹中,可能包含了一个简单...
在本案例中,`myJson.jar`很可能包含了实现JavaBean到JSON转换的类和相关依赖。 总结来说,`javaBean to json java对象转换 jar`这个主题涉及到Java对象的序列化、JSON数据格式以及Java的归档文件系统。通过使用...
JSON-lib是一个Java库,用于处理JSON(JavaScript Object Notation)和XML之间的转换。这个框架使得在Java应用程序中处理这两种数据格式变得简单。JSON是一种轻量级的数据交换格式,被广泛用于Web服务和前后端交互,...
DWR(Direct Web Remoting)是一个JavaScript和Java之间的通信库,可以将JavaBean对象透明地转换为JSON或XML,用于AJAX交互。 4. **配置文件**:许多Java应用使用XML文件存储配置信息,JavaBean可以用来封装这些...
### JSON-lib框架详解:转换JSON、XML不再困难 #### 一、概述 JSON-lib是一个用于Java平台的强大且灵活的库,它可以实现Java对象与JSON、XML格式数据之间的互相转换。对于那些希望在Java应用程序中轻松处理JSON或...
1. XML到XSD的转换:XML文档可以被转化为XSD文件,以定义其结构和数据类型。这个过程通常通过工具完成,比如`trang.jar`,这是一个开源的RNG到其他Schema语言的转换工具。在本例中,可能使用了`trang.jar`将一个XML...
通过fastjson实现了JavaBean,list<JavaBean>,MAP,list等格式与json格式之间的转换,已经附带fastjson的包,包的版本为fastjson-1.1.36.jar
这个压缩包包含了将JSON转换为XML所需的一些关键Java库,这些库可以帮助开发者实现这个功能。以下是对压缩包中每个文件的详细介绍: 1. `commons-collections-3.2.1.jar`:这是Apache Commons Collections库的一个...
标题“xmljson生成实体类”指的是一个工具,它可以自动化地将XML或JSON格式的数据转换为Java实体类。这种工具通常会分析XML或JSON结构,然后自动生成对应的Java类,这些类包含了与原始数据相对应的属性和getter/...
6. **示例代码**:项目中的示例代码会涵盖各种使用场景,如简单的JavaBean到JSON的转换,复杂类型(如集合和自定义类型)的序列化,以及如何利用流式API处理大文件。通过阅读和运行这些示例,开发者可以快速掌握...
Xstream 是一个 Java 库,用于处理 XML 文件的序列化和反序列化,同时也支持将 JavaBean 转换为 JSON 格式。它的核心理念是通过简单的 API 设计,使得 XML 序列化过程变得简洁,无需额外的映射文件或辅助类。 ### 1...
JSON 在 Java 中的使用可以使用 JavaBean 和 JSON 的互转、List 和 JSON 的互转、Map 和 JSON 的互转等方式来实现。 项目实践 使用 Ajax 验证用户名是否可用、使用 Ajax 请求修改购物车、添加商品、修改数量等项目...
4. **XML到JSON**:除了处理Java对象,JSON-lib还提供了一个实用的功能,可以将XML转换为JSON。这在需要在XML和JSON之间互换数据时非常有用。可以使用`net.sf.json.JSONObject.fromXML(String xml)`方法完成这一操作...
5. **XML解析库**:如Apache Xerces或JDOM,可能用于处理与XML相关的部分,因为JSON有时可以与XML相互转换。 6. ** Logging框架**:如log4j或commons-logging,用于日志记录,帮助调试和诊断问题。 在使用`json-lib...