您的位置:首页 > 编程语言 > Java开发

JAVA array,map 转 json 字符串

2014-02-25 17:38 197 查看
Java代码



public class User {

private String username;

private 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;

}

}

普通JavaBean(以User为例)转成json格式

1.转成JSONArray类型

User user = new User();

user.setUsername("cxl");

user.setPassword("1234");

JSONArray json = JSONArray.fromObject(user);

System.out.println(json);//[{"password":"1234","username":"cxl"}]

response.getWriter().print(json.toString());

在js文件取数据

$.getJSON("http://localhost:8080/jQueryDemo/servlet/UserServlet",null,function(data) {

alert(data[0].username);

alert(data[0].password);

});

2.转成JSONObject类型

JSONObject jsonObj = JSONObject.fromObject(user);

System.out.println(jsonObj);//{"password":"1234","username":"cxl"}

response.getWriter().print(jsonObj);

在js文件取数据

alert(data.username);

alert(data.password);

List转成json格式

List<User> users = new ArrayList<User>();

User user = new User();

user.setUsername("cxl");

user.setPassword("1234");

User u = new User();

u.setUsername("lhl");

u.setPassword("1234");

users.add(user);

users.add(u);

1.转成JSONArray类型

JSONArray json = JSONArray.fromObject(users);

System.out.println(json.toString());

//[{"password":"1234","username":"cxl"},{"password":"1234","username":"lhl"}]

response.getWriter().print(json.toString());

js中取数据:alert(alert(data[0].username));

2.转成JSONObject类型

不可直接使用JSONObject jsonObj = JSONObject.fromObject(users);

可通过下列方式

JSONObject jsonObj = new JSONObject();

jsonObj.put("users", users);

jsonObj.put("u", u);

System.out.println(jsonObj);

{"users":[{"password":"1234","username":"cxl"},{"password":"1234","username":"lhl"}],

"u":{"password":"1234","username":"lhl"}}

response.getWriter().print(jsonObj);

js中取数据:alert(data.users[0].username);

alert(data.u[0].username);

Map转成json格式

Map<String,Object> map = new HashMap<String,Object>();

map.put("users", users);

map.put("u", u);

1.转成JSONArray类型

JSONArray json = JSONArray.fromObject(map);

System.out.println(json.toString());//

[{"users":[{"password":"1234","username":"cxl"},{"password":"1234","username":"lhl"}],"u":{"password":"1234","username":"lhl"}}]

response.getWriter().print(json.toString);

js中取数据:alert(data[0].users[0].username);

2.转成JSONObject类型

JSONObject json = JSONObject.fromObject(map);

System.out.println(json);//

{"user":[{"password":"1234","username":"cxl"},{"password":"1234","username":"lhl"}],"u":{"password":"1234","username":"lhl"}}

response.getWriter().print(json);

js中取数据:alert(data.user[0].username);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: