Java解析Json数据

来源:互联网 发布:xp 1433端口怎么打开 编辑:程序博客网 时间:2024/04/30 02:13

一、Java解析Json数据

1、JsonObject

使用JsonObject解析只有一条数据的json是非常方便的例如:"{\"name\":\"zhangsan\",\"password\":\"zhangsan123\",\"email\":\"10371443@qq.com\"}"

  1. public static void main(String[] args) {  
  2.   
  3.          String jsonString ="{\"name\":\"zhangsan\",\"password\":\"zhangsan123\",\"email\":\"10371443@qq.com\"}";  
  4.          JSONObject json = JSONObject.fromObject(jsonString);  
  5.          User user = new User();  
  6.          user.setName(json.getString("name"));  
  7.          user.setPassword(json.getString("password"));  
  8.          user.setEmail(json.getString("email"));  
  9.          System.out.println(user.toString());  
  10.     }  

2、JsonArray

使用JsonArray解析数组数据的json是非常方便的例如:"[{\"name\":\"zhangsan\",\"password\":\"zhangsan123\",\"email\":\"10371443@qq.com\"},{\"name\":\"lisi\",\"password\":\"lisi123\",\"email\":\"1435123@qq.com\"}]"

[java] view plain copy
  1. String json = <span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">"[{\"name\":\"zhangsan\",\"password\":\"zhangsan123\",\"email\":\"10371443@qq.com\"},</span><span style="color: rgb(515151); font-family: Arial; font-size: 14px; line-height: 26px;">{\"name\":\"lisi\",\"password\":\"lisi123\",\"email\":\"1435123@qq.com\"}</span><span style="color: rgb(515151); font-family: Arial; font-size: 14px; line-height: 26px;">]"</span>;  
  2.          JSONArray jsonArray = JSONArray.fromObject(json);  
  3.          ArrayList<User> users = new ArrayList<User>();  
  4.          for (int i = 0; i < jsonArray.size(); i++) {  
  5.              User userM = new User();  
  6.              user.setName(jsonArray.getJSONObject(i).getString("name"));  
  7.              user.setpassword(jsonArray.getJSONObject(i).getString("password"));  
  8.              user.setEmail(jsonArray.getJSONObject(i).getString("email"));  
  9.              users.add(user);  
  10.         }  
  11.          for (User user : users) {  
  12.             System.out.println(user.toString());  
  13.         }  
二、Jsp解析json数据

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>JqueryDemo1</title>
<script src="jquery.js"></script>
<script>

function showData() {
    var str='{ "name": "John" }';//json标准格式
    var obj = eval('(' + str + ')'); 
    alert( obj.name);


    var str2="{ 'name': 'John' }";
    var obj2 = eval('(' + str2 + ')'); 
    alert( obj2.name);


    var str3='{"GetUserPostByIdResult":{"Age":"33","ID":"2server","Name":"mady"}}';
    var obj3 = eval('(' + str3 + ')'); 
    alert( obj3.GetUserPostByIdResult.ID);
    
    var data=" { root: [ {'name':'6200','value':'0'}, {'name':'6101','value':'xa'}, {'name':'6102','value':'beijing'}, {'name':'6103','value':'haerbin'}]}";
    var date1=eval('('+data+')');
    alert(date1.root[2].name);


  var last=JSON.stringify(obj);//将JSON对象转化为JSON字符
    alert(last);
}


</script>
</head>
<body>
<input id="Button1" type="button" value="Hit Me" onclick="showData()" /> 


</body>
</html>

原创粉丝点击