package com.fh.test;
import java.io.IOException;
import java.util.ArrayList;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fh.panghu.entity.User;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JSONSerializer;
import net.sf.json.JsonConfig;
/**
*
* @author fcbird
* 借助net.sf.json的第三方jar包帮助类完成实体类与json对象,实体类集合与jsonArray互相转换
*
*/
public class TestJsonEntityListMap {
@SuppressWarnings("unchecked")
public static void getData() {
JSONObject objec1t = new JSONObject();
JSONObject objec2t = new JSONObject();
JSONArray jsonArray = new JSONArray();
ArrayList<User> users = new ArrayList<User>();
ArrayList<User> users12 = new ArrayList<User>();
JsonConfig jsonConfig = new JsonConfig();
ObjectMapper objectMapper=new ObjectMapper();
User user= new User();
User user12= new User();
//构造数据
user.setDdid("ddid");
user.setMobile("mobile");
user.setUserid("password");
user.setPassword("userid");
user.setUsername("username");
user12.setDdid("ddid1");
user12.setMobile("mobile1");
user12.setUserid("password1");
user12.setPassword("userid1");
user12.setUsername("username1");
objec1t.put("ddid", "ddid1");
objec1t.put("mobile", "mobile1");
objec1t.put("password", "password1");
objec1t.put("userid", "userid1");
objec1t.put("username", "username1");
objec2t.put("ddid", "ddid2");
objec2t.put("mobile", "mobile2");
objec2t.put("password", "password2");
objec2t.put("userid", "userid2");
objec2t.put("username", "username2");
users.add(user);
users.add(user12);
jsonArray.add(objec1t);
jsonArray.add(objec2t);
//实体转为JSON对象
//实体转为JSON对象第一种
String jsonString1 = JSONSerializer.toJSON(user).toString();
//实体转为JSON对象第二种
String jsonString2 = JSONObject.fromObject(user).toString();
//JSON对象转为实体
//JSON对象转为实体第一种
User user1=(User)JSONObject.toBean(objec1t, User.class);
User user2 = new User();
try {
//JSON对象转为实体第二种
user2=objectMapper.readValue(objec1t.toString(), User.class);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//实体类集合转为JSONArray
String jsonArrayString = JSONArray.fromObject(users, jsonConfig).toString();
users12 = (ArrayList<User>) JSONArray.toCollection(jsonArray,User.class);
System.out.println("实体转为json1:"+jsonString1);
System.out.println("实体转为json2:"+jsonString2);
System.out.println("json1转为实体:"+user1);
System.out.println("json2转为实体:"+user2);
System.out.println("实体集合转为jsonArray:"+jsonArrayString);
System.out.println("jsonArray转为实体集合:"+users12);
}
public static void main(String[] args) {
getData();
}
}
import java.io.IOException;
import java.util.ArrayList;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fh.panghu.entity.User;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JSONSerializer;
import net.sf.json.JsonConfig;
/**
*
* @author fcbird
* 借助net.sf.json的第三方jar包帮助类完成实体类与json对象,实体类集合与jsonArray互相转换
*
*/
public class TestJsonEntityListMap {
@SuppressWarnings("unchecked")
public static void getData() {
JSONObject objec1t = new JSONObject();
JSONObject objec2t = new JSONObject();
JSONArray jsonArray = new JSONArray();
ArrayList<User> users = new ArrayList<User>();
ArrayList<User> users12 = new ArrayList<User>();
JsonConfig jsonConfig = new JsonConfig();
ObjectMapper objectMapper=new ObjectMapper();
User user= new User();
User user12= new User();
//构造数据
user.setDdid("ddid");
user.setMobile("mobile");
user.setUserid("password");
user.setPassword("userid");
user.setUsername("username");
user12.setDdid("ddid1");
user12.setMobile("mobile1");
user12.setUserid("password1");
user12.setPassword("userid1");
user12.setUsername("username1");
objec1t.put("ddid", "ddid1");
objec1t.put("mobile", "mobile1");
objec1t.put("password", "password1");
objec1t.put("userid", "userid1");
objec1t.put("username", "username1");
objec2t.put("ddid", "ddid2");
objec2t.put("mobile", "mobile2");
objec2t.put("password", "password2");
objec2t.put("userid", "userid2");
objec2t.put("username", "username2");
users.add(user);
users.add(user12);
jsonArray.add(objec1t);
jsonArray.add(objec2t);
//实体转为JSON对象
//实体转为JSON对象第一种
String jsonString1 = JSONSerializer.toJSON(user).toString();
//实体转为JSON对象第二种
String jsonString2 = JSONObject.fromObject(user).toString();
//JSON对象转为实体
//JSON对象转为实体第一种
User user1=(User)JSONObject.toBean(objec1t, User.class);
User user2 = new User();
try {
//JSON对象转为实体第二种
user2=objectMapper.readValue(objec1t.toString(), User.class);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//实体类集合转为JSONArray
String jsonArrayString = JSONArray.fromObject(users, jsonConfig).toString();
users12 = (ArrayList<User>) JSONArray.toCollection(jsonArray,User.class);
System.out.println("实体转为json1:"+jsonString1);
System.out.println("实体转为json2:"+jsonString2);
System.out.println("json1转为实体:"+user1);
System.out.println("json2转为实体:"+user2);
System.out.println("实体集合转为jsonArray:"+jsonArrayString);
System.out.println("jsonArray转为实体集合:"+users12);
}
public static void main(String[] args) {
getData();
}
}
测试结果截图: