gson 자바 대상 과 json 변환 (실례 코드 설명 및 강좌)
4641 단어 gson
Gson 에서 가장 중요 한 대상 은 Gson 2 개 와 Gson Builder 다.
Gson 은 두 가지 기본 적 인 방법 이 있어 요.
1) toJSon () – 자바 대상 을 JSON 으로 변환
2) from JSon () – JSON 을 자바 대상 으로 변환
두. 몇 가지 간단 한 예.
exp 1 (간단 한 대상 object 와 json 간 의 전환):
public class MsgInfo2 {
private String message;
private String flag;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag;
}
}
public class Test1 {
public static void main(String[] args) {
MsgInfo2 m2 = new MsgInfo2();
m2.setFlag("00");
m2.setMessage("message");
tojson(m2);
String json = "{'message':'message1','flag':'00'}";
toObject(json);
}
public static void tojson(MsgInfo2 m) {
// json
Gson gson = new Gson();
String result = gson.toJson(m);
System.out.println(result);
// :{"message":"message","flag":"00"}
}
public static void toObject(String m) {
// json
Gson gson = new Gson();
MsgInfo2 msg = gson.fromJson(m, MsgInfo2.class);
System.out.println(msg.getFlag());// :00
System.out.println(msg.getMessage());// :message1
}
}
exp 2 (복잡 한 대상 object 와 json 간 의 전환):
json 의 구 조 는 다음 과 같다.
{ "org": { "orgId": "orgId", "orgName": "orgName" }, "biz": [ { "appcode": 55,
"subscode": "subscode0" }, { "appcode": 66, "subscode": "subscode1" } ] }
public class ComOpen {
private Org org;
private List biz;
public Org getOrg() {
return org;
}
public void setOrg(Org org) {
this.org = org;
}
public List getBiz() {
return biz;
}
public void setBiz(List biz) {
this.biz = biz;
}
}
public class Org {
private String orgId;
private String orgName;
public String getOrgId() {
return orgId;
}
public void setOrgId(String orgId) {
this.orgId = orgId;
}
public String getOrgName() {
return orgName;
}
public void setOrgName(String orgName) {
this.orgName = orgName;
}
}
public class BizObject {
private int appcode;
private String subscode;
public String getSubscode() {
return subscode;
}
public void setSubscode(String subscode) {
this.subscode = subscode;
}
public int getAppcode() {
return appcode;
}
public void setAppcode(int appcode) {
this.appcode = appcode;
}
}
/**
* java json
*
* @author yangliang
* @version 1.0
* @created 2011-10-11 03:14:04
* @history
* @see
*/
public class Test2 {
public static void main(String[] args) {
toJson();
toObject();
}
public static void toJson(){
ComOpen como = new ComOpen();
Org org = new Org();
org.setOrgId("orgId");
org.setOrgName("orgName");
como.setOrg(org);
List biz = new ArrayList();
BizObject bizObject = new BizObject();
bizObject.setAppcode(55);
bizObject.setSubscode("subscode0");
BizObject bizObject1 = new BizObject();
bizObject1.setAppcode(66);
bizObject1.setSubscode("subscode1");
biz.add(bizObject);
biz.add(bizObject1);
como.setBiz(biz);
Gson gson=new GsonBuilder().create();
String result = gson.toJson(como);
System.out.println(result);
// {"org":{"orgId":"orgId","orgName":"orgName"},"biz":
//[{"appcode":55,"subscode":"subscode0"},{"appcode":66,"subscode":"subscode1"}]}
}
public static void toObject(){
String json = "{'org':{'orgId':'orgId','orgName':'orgName'},'biz':" +
"[{'appcode':55,'subscode':'subscode0'},{'appcode':66,'subscode':'subscode1'}]}";
Gson gson=new Gson();
ComOpen m3 = gson.fromJson(json, ComOpen.class);
System.out.println(m3.getBiz().size());//2
System.out.println("orgId:"+m3.getOrg().getOrgId());//orgId:orgId
System.out.println("appcode:"+ m3.getBiz().get(0).getAppcode());//appcode:55
}
}
3. 기타 gson 튜 토리 얼 과 공식 도움말 문 서 를 참고 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
gson이 Integer를 기본적으로 Double로 변환하는 문제를 완벽하게 해결우선 javascript는 다음과 같은 유형만 있습니다. 1. JavaScript의 Number 이중 정밀도 부동 소수점 형식 2. String 큰따옴표의 백슬래시 의미의 유니코드 3. Boolean true 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.