-
Gson을 사용한 JsonArray 형태의 String을 JsonArray로 변환하기개발/JAVA 2019. 11. 27. 18:26
[{A:a,B:b,C:,c},{A:a,B:b,C:,c},{A:a,B:b,C:,c},{A:a,B:b,C:,c}...] 형태로 저장된 파일을 읽어 다루는 일이 있었다.
jsonArray 데이터를 toString화 하여 저장한 듯한 이 데이터를 다시 jsonArray로 돌려놓기 위해서는
의존 설정
build.gradle dependencies에
compile group: 'org.springframework.boot', name: 'spring-boot-starter-json', version: '2.1.9.RELEASE' //'org.springframework.boot:spring-boot-starter-web' 에 포함되어 있어 보통 생략 가능 implementation 'com.google.code.gson:gson:2.8.5'
를 추가
JSONArray ja = new JSONArray(stringData);
로 데이터를 생성하면 된다.
만약 위 데이터를 정의한 Data클래스가 있다면
List<Data> dataList = new ArrayList<> (); try{ JSONArray ja = new JSONArray(stringData); for (int i = 0; i < ja.length(); i++){ JSONObject order = ja.getJSONObject(i); Gson gson = new Gson ( ); Data data = gson.fromJson(order.toString (),Data.class); dataList.add (data); } } catch (JSONException e) { e.printStackTrace ( ); }
와 같이 객체 리스트로 만들수도 있다.
'개발 > JAVA' 카테고리의 다른 글
array형 json string값을 object로 변환할때 ( json string array to object) (0) 2021.03.17 double 형 비교 (0) 2020.03.03 @FunctionalInterface annotation (0) 2019.08.12 jpa join시 join column과 join table 구분 (0) 2019.07.09 이름 규칙 (0) 2019.07.08 댓글