jackson json 의 간단 한 사용
5862 단어 자바jackson json
진짜 편 하 더 라 고요.
나 는 list 대상 을 json 대상 으로 바 꾸 고 json 배열 을 List 대상 으로 바 꿔 야 한다.
jackson json 공식 주소: http://jackson.codehaus.org/
jackson json 은 json 데 이 터 를 변환 하 는 세 가지 방법 이 있 습 니 다.
스 트림 모드, 트 리 모드, 데이터 바 인 딩 모드.서로 다른 환경 에서 사용 하면 나의 수요 데이터 바 인 딩 모델 은 간단 하면 실현 할 수 있다.
user 개체 코드:
package jackson;
import java.io.Serializable;
/**
*
* @author alaric
*
*/
public class User implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private Integer id;
private String username;
private String password;
private Integer sex;
private Integer age;
private String brithday;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
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;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getBrithday() {
return brithday;
}
public void setBrithday(String brithday) {
this.brithday = brithday;
}
}
result 개체 코드:
package jackson;
import java.io.Serializable;
import java.util.List;
public class Result implements Serializable {
/**
*
*/
private static final long serialVersionUID = 9121346318498657366L;
private Integer msgCode;
private String message;
private List<User> list;
public Integer getMsgCode() {
return msgCode;
}
public void setMsgCode(Integer msgCode) {
this.msgCode = msgCode;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public List<User> getList() {
return list;
}
public void setList(List<User> list) {
this.list = list;
}
@Override
public String toString() {
return "{msgCode:"+msgCode+" message:"+message+" list:"+list.toString()+"}";
}
}
테스트 코드:
package jackson;
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;
public class JacksonTest {
public static Result json2Obj(String json){
try {
ObjectMapper mapper = new ObjectMapper();
Result result = mapper.readValue(json, Result.class);
return result;
} catch (JsonParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static String obj2Json(Result result){
try {
ObjectMapper mapper= new ObjectMapper();
String json = mapper.writeValueAsString(result);
return json ;
} catch (JsonGenerationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static Result getData(){
Result result = new Result();
result.setMessage(" ");
result.setMsgCode(1);
List<User> list = new ArrayList<>();
User user1= new User();
user1.setAge(25);
user1.setBrithday("1986-06-26");
user1.setId(1);
user1.setPassword("3424242");
user1.setSex(2);
user1.setUsername("zhangsan");
list.add(user1);
result.setMessage(" ");
result.setMsgCode(1);
User user2= new User();
user2.setAge(25);
user2.setBrithday("1986-06-26");
user2.setId(1);
user2.setPassword("3424242");
user2.setSex(2);
user2.setUsername("lisi");
list.add(user2);
result.setList(list);
return result;
}
public static void main(String[] args) {
Result result = getData();
String json = obj2Json(result);
System.out.println(json);
result = json2Obj(json);
List <User> list = result.getList();
for(User user:list){
System.out.println(user.getUsername());
}
System.out.println(result.toString());
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.