정의
: json의 자바 오브젝트를 직렬화 또는 역직렬화 해주는 오픈 자바 소스 라이브러리
즉, Json Object -> Java Obejct / JavaObejct -> Json Object 로 변환해준다.
예제)
// Member.java
public class Member{
private String loginId;
private String name;
public Member(String loginId, String name) {
this.loginId = loginId;
this.name = name;
}
}
// JSON Object -> JAVA Object
String str = "{'loginId':'id@id.com', 'name':'이름'}";
Gson gson = new Gson();
Member result = gson.fromJson(str, Member.class);
결과: Json -> Java : Member(loginId=id@id.com, name=이름)
// JSON Object -> List<> json으로 받아온 값을 리스트 객체에 넣기
String str = "[{'loginId':'id@id.com', 'name':'가가'}, {'loginId':'id2@id2.com', 'name':'나나'}]";
Gson gson = new Gson();
@SuppressWarnings("serial")
Type member = new TypeToken<List<Member>>(){}.getType();
List<Member> list = gson.fromJson(str, member);
결과: json -> Java : [Member(loginId=id@id.com, name=가가), Member(loginId=id2@id2.com, name=나나)]
// JAVA Object -> JSON Object
Member m = new Member("id@id.com", "이름");
Gson gson = new Gson();
String result = gson.toJson(m);
결과: Java -> Json : {"loginId":"id@id.com", "name":"이름"}
배열을 문자열로 변환(String.join()) (0) | 2022.04.03 |
---|---|
Content-Type, Accept (0) | 2022.03.17 |
[SpringBoot] Bean 어노테이션 (0) | 2022.03.03 |
직전에 쌓인 키값을 가져오기(Mybatis selectKey) (0) | 2022.01.23 |
split 첫 번째만 자르기 (0) | 2021.11.02 |