JSONObject的使用(javabean, json字符串, XML之间的转换)

总结:

  拼装json字符串
  XML-->json字符串

  json字符串-->javabean
  json字符串-->XML

  javabean-->json字符串
  javabean-->XML

------------------------------------------------------

    

UserInfo.java:

private String username;
private String password;
+getter()/setter()

JSONObject_1_3.java:

package json;

import java.io.UnsupportedEncodingException;

import net.sf.json.JSONObject;

/**
 * 说明: 以下例子学习到JSONObject的常用方法的使用, 具体的方法请看JSONObject API
 * 链接: http://resources.arcgis.com/en/help/arcobjects-java/api/arcobjects/com/esri/arcgis/server/json/JSONObject.html
 * 需要用到的测试数据:
 * JSON: {"password":"123456","username":"张三"}
 * XML: 
 * <?xml version="1.0" encoding="UTF-8"?> 
		<user_info>
			<password>123456</password>
			<username>张三</username>
		</user_info>
 */
public class JSONObject_1_3 {
public static void main(String[] args) throws UnsupportedEncodingException {
		// 示例1: 后台接受到前台的json格式的字符串怎么处理? 
		String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";	// 前端传过来的json串
		JSONObject jsonObj = JSONObject.fromString(jsonStr);
		String username = jsonObj.getString("username");	// 从json串中解析出用户名
		String password = jsonObj.getString("password");	// 从json串中解析出密码
		System.out.println(username + " | " + password);	// out: 张三 | 123456
		// 示例2: 后台是怎么拼装json格式的字符串? 
		/*
		JSONObject jsonObj = new JSONObject();
		jsonObj.put("username", "张三");		// 把用户名拼装到jsonObj对象中
		jsonObj.put("password", "123456");	// 把密码拼装到jsonObj对象中
		System.out.println(jsonObj.toString());	// out: {"username":"张三","password":"123456"}
		*/
		// 示例3: json格式的字符串怎么转换为xml格式的字符串?
		/*
		String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";	// 前端传过来的json串
		JSONObject jsonObj = JSONObject.fromString(jsonStr);
		XMLSerializer xmlSerializer = new XMLSerializer();
		xmlSerializer.setRootName("user_info");
		xmlSerializer.setTypeHintsEnabled(false);
		String xmlStr = xmlSerializer.write(jsonObj);
		System.out.println(xmlStr);
		*/
		/**
		 * out: <?xml version="1.0" encoding="UTF-8"?>
				<user_info><password>123456</password><username>寮犱笁</username></user_info>
		 */
		// 示例4: xml格式的字符串怎么转换为json格式的字符串?
		/*
		String xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-\"?><user_info><password>12456</password><username>张三</username></user_info>";
		JSON jsonStr = XMLSerializer.read(xmlStr);
		// JSONObject jsonObject = (JSONObject) XMLSerializer.read(xmlStr);
		System.out.println(jsonStr.toString());	// out: {"username":"张三","password":"12456"}
		*/
		// 示例5: javabean怎么转换为json字符串?
		/*
		UserInfo userInfo = new UserInfo();
		userInfo.setUsername("张三");
		userInfo.setPassword("123456");
		JSONObject jsonObj = JSONObject.fromBean(userInfo);
		System.out.println(jsonObj.toString());		// out: {"username":"张三","password":"123456"}
		*/
		// 示例6: javabean怎么转换为xml字符串? javabean-->JsonObject-->XML
		/*
		UserInfo userInfo = new UserInfo();
		userInfo.setUsername("张三");
		userInfo.setPassword("123456");
		JSONObject jsonObj = JSONObject.fromBean(userInfo);
		XMLSerializer xmlSerializer = new XMLSerializer();
		xmlSerializer.setRootName("user_info");
		String xmlStr = xmlSerializer.write(jsonObj, "UTF-8");
		System.out.println(xmlStr);
		*/
		/**
		 * <?xml version="1.0" encoding="UTF-8"?>
		   <user_info><password type="string">123456</password><username type="string">寮犱笁</username></user_info>
		 */
}

  

 

posted @ 2017-05-20 14:46  半生戎马,共话桑麻、  阅读(209)  评论(0)    收藏  举报
levels of contents