package com.zhouyuan.mydemo.util;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
import com.zhouyuan.mydemo.entity.User;
public class JSONUtil {
private static ObjectMapper mapper = new ObjectMapper();
/**
* 将java对象转为JSON字符串
* @throws Exception
* @throws JsonMappingException
* @throws JsonGenerationException
*/
public String javaToJson() throws Exception{
User user = new User();
user.setId(111);
user.setUserName("Json");
user.setPassword("123345");
user.setAddress("贵州");
user.setHobby("篮球");
String json = mapper.writeValueAsString(user);
return json;
}
public static void main(String[] args) throws Exception {
JSONUtil ju = new JSONUtil();
//String json = ju.javaToJson();
String json = ju.listToJson();
//将json字符转为Java对象
//User user = (User) ju.jsonToJava(json);
/*System.out.println(json);
List<Object> users = ju.jsonToList(json);
System.out.println(users);*/
//System.out.println(user);
System.out.println(json);
}
/**
* 将JSON字符串转为Java对象
* @throws IOException
* @throws JsonMappingException
* @throws JsonParseException
*/
public Object jsonToJava(String json) throws JsonParseException, JsonMappingException, IOException{
User user = mapper.readValue(json, User.class);
return user;
}
/**
* 将Java集合转为JSON字符串
* @throws IOException
* @throws JsonMappingException
* @throws JsonGenerationException
*/
public String listToJson() throws JsonGenerationException, JsonMappingException, IOException{
User user = new User();
user.setId(111);
user.setUserName("Json");
user.setPassword("123345");
user.setAddress("贵州");
user.setHobby("篮球");
User user1 = new User();
user1.setId(112);
user1.setUserName("hello");
user1.setPassword("532");
user1.setAddress("上海");
user1.setHobby("排球");
List<User> lists = new ArrayList<User>();
lists.add(user);
lists.add(user1);
String json = mapper.writeValueAsString(lists);
return json;
}
public List<Object> jsonToList(String json) throws JsonParseException, JsonMappingException, IOException{
List<Object> obj = mapper.readValue(json, new TypeReference<List<User>>(){});
return obj;
}
/**
* 将Java数组转为JSON字符串
*/
public String arrayToJson(){
return null;
}
}
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
import com.zhouyuan.mydemo.entity.User;
public class JSONUtil {
private static ObjectMapper mapper = new ObjectMapper();
/**
* 将java对象转为JSON字符串
* @throws Exception
* @throws JsonMappingException
* @throws JsonGenerationException
*/
public String javaToJson() throws Exception{
User user = new User();
user.setId(111);
user.setUserName("Json");
user.setPassword("123345");
user.setAddress("贵州");
user.setHobby("篮球");
String json = mapper.writeValueAsString(user);
return json;
}
public static void main(String[] args) throws Exception {
JSONUtil ju = new JSONUtil();
//String json = ju.javaToJson();
String json = ju.listToJson();
//将json字符转为Java对象
//User user = (User) ju.jsonToJava(json);
/*System.out.println(json);
List<Object> users = ju.jsonToList(json);
System.out.println(users);*/
//System.out.println(user);
System.out.println(json);
}
/**
* 将JSON字符串转为Java对象
* @throws IOException
* @throws JsonMappingException
* @throws JsonParseException
*/
public Object jsonToJava(String json) throws JsonParseException, JsonMappingException, IOException{
User user = mapper.readValue(json, User.class);
return user;
}
/**
* 将Java集合转为JSON字符串
* @throws IOException
* @throws JsonMappingException
* @throws JsonGenerationException
*/
public String listToJson() throws JsonGenerationException, JsonMappingException, IOException{
User user = new User();
user.setId(111);
user.setUserName("Json");
user.setPassword("123345");
user.setAddress("贵州");
user.setHobby("篮球");
User user1 = new User();
user1.setId(112);
user1.setUserName("hello");
user1.setPassword("532");
user1.setAddress("上海");
user1.setHobby("排球");
List<User> lists = new ArrayList<User>();
lists.add(user);
lists.add(user1);
String json = mapper.writeValueAsString(lists);
return json;
}
public List<Object> jsonToList(String json) throws JsonParseException, JsonMappingException, IOException{
List<Object> obj = mapper.readValue(json, new TypeReference<List<User>>(){});
return obj;
}
/**
* 将Java数组转为JSON字符串
*/
public String arrayToJson(){
return null;
}
}