相关jar包 点击打开链接
在项目开发中,json跟java相互转换是使用最多的,话不多说直接看栗子
package json;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JSONDemo {
public static void main(String[] args) {
jsonToJAVA();
jsonsToJAVA();
javaToJSON();
javaBeanToJSON();
javaToJson();
}
/*
* json字符串转JSONObject
*/
public static void jsonToJAVA() {
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
System.out.println("json--->java \t"+jsonObj.getString("username"));
}
/*
* json字符串数组转为JSONArray
*/
public static void jsonsToJAVA(){
String array = "{\"list\":[{\"key0\":\"value0\"},{\"key1\":\"value1\"},{\"key2\":\"value2\"}]}";
JSONObject json = JSONObject.fromString(array);
JSONArray jsonArray = JSONArray.fromString(json.getString("list"));
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObj = (JSONObject) jsonArray.get(i);
System.out.println("jsons--->java \t"+jsonObj);
}
}
/*
* JSONObject转json字符
*/
public static void javaToJSON() {
JSONObject jsonObj = new JSONObject();
jsonObj.put("username","张三");
jsonObj.put("password","123456");
System.out.println("java--->json \t" + jsonObj.toString());
}
/*
* javabean转json字符串
*/
public static void javaBeanToJSON() {
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("123456");
JSONObject json = JSONObject.fromBean(userInfo);
System.out.println("javabean--->json \t" + json.toString());
}
/*
* 集合转为json字符串
*/
public static void javaToJson(){
Map<String,Object> result = new HashMap<String,Object>();
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
for(int i=0;i<3;i++){
Map<String,String> map = new HashMap<String, String>();
map.put("key"+i,"value"+i);
list.add(map);
}
result.put("list",list);
result.put("k1","v1");
JSONObject jsonObject = JSONObject.fromMap(result);
System.out.println("Map--->json \t"+jsonObject);
}
}
package json;
public class UserInfo {
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;
}
}