일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 2638번 치즈
- 알고리즘 수업-깊이 우선 탐색1
- 힙 자바스크립트
- 알고리즘
- level0
- 자바스크립트
- dfs
- 13023번 ABCDE
- 백준 2638번
- 부녀회장이 될 테야
- 기지국 설치 js
- 백준
- 1389번 케빈 베이컨의 6단계 법칙
- 1937번 욕심쟁이 판다
- 리덕스
- 백준 1068번 트리
- ssh
- 백준 13023번
- Java
- 24480번
- 기지국 설치 자바스크립트
- 백준 1068
- React
- 프로그래머스
- 2275번
- 1303번
- JavaScript
- 우선순위 큐 자바스크립트
- level1
- Redux
- Today
- Total
코딩왕랄프👊🏻
[GSON] GSON 정리 본문
GSON?
Json 구조를 띄는 직렬화된 데이터를 자바의 객체로 직렬화, 역직렬화 해주는 자바 라이브러리
Json Object <-> Java Object 변경이 가능하도록 해줌
# GSON 사용법
- GSON 사용 위해서는, 라이브러리 들을 설치해주어야 함!
# GSON으로 자바의 데이터들을 파일에 저장
다음은 내가 진행하고 있는 프로젝트의 한 부분이다.
순서는 이렇다.
1. Gson을 선언해주기.
2. gson.toJson (저장할 데이터) 를 사용하여 json 으로 변형된 string 받기
3. FileWriter 선언
4. FileWriter로 위의 json 형식으로 된 string을 write
* 이때, 이렇게만 하면 파일에 저장되는 json이 한줄로 쭉 늘어져 보기 힘든 경우가 있다.
이를 방지하기 위해, Gson을 선언할때 setPrettyPrinting()을 사용!
사용법은 이렇다.
Gson gson = new GsonBuilder().setPrettyPrinting().create();
이 메소드를 사용하면 보다 깔끔하게 json 데이터들이 정렬된 걸 확인할 수 있다!
# GSON으로 자바의 데이터들을 파일에서 읽어오기
순서는 이렇다.
1. StringBuffer 선언
2. FileReader 선언
3. StringBuffer로 json 파일에 있는 데이터들을 읽어오기
4. StringBuffer.toString() 메소드를 이용해 스트링버퍼를 스트링 형태로 변환
5. Gson 선언
6. gson.fromJson(string, 저장하고자 하는 class)
이때 나는 Todo라는 클래스의 배열에다 저장하길 원했다. => Todo[].calss
Todo[] todoArray = gson.fromJson(string, Todo[].class);
7. 배열로된 데이터를 리스트로 옮길때, Arrays.asList() 메소드 사용
8. 옮겨진 리스트에 원하는 데이터들이 담겨 있다!
*처음 나는, Gson으로 변형 한 것을 하나의 string으로 받아 Parser로 일일이 다 element들을 뽑아냈다.
* list나 array로 사용할 경우, 위 같은 방법이 있음을 꼭 잊지 말고 이용하자,,!
* Parser로 하나하나 return 하니 너무 시간이 오래걸렸다ㅠ