Java

[ Spring Boot] JAVA에서 JSON 데이터 만드는 방법

JooKit 주킷 2020. 12. 22. 00:11
목차 접기
728x90
반응형

JAVA에서 JSON 데이터 만드는 방법

JSON Maven 추가

<dependency>
    <groupId>com.googlecode.json-simple</groupId>
    <artifactId>json-simple</artifactId>
    <version>1.1.1</version>
</dependency>

아래와 같은 데이터를 만들고 싶을 경우 라이브러리를 추가했다면 JSONArray, JSONObject 객체를 사용할 수 있다.

{ 
“SECR_KEY”: "ktko.tistory.com”, 
“KEY”: “ktko”, 
“REQ_DATA”: [ 
    { 
     “BANK_CD”: “088”, “SEARCH_ACCT_NO”: “1231231234”, “ACNM_NO”: “123456”, “ICHE_AMT”: “0”, “TRSC_SEQ_NO”: “0000001” 
    } 
  ] 
}

JSONObject 객체를 생성하여 데이터를 .put 할 수 있다.

JSONObject에 배열을 포함하고 싶다면 JSONArray 객체를 만들어 데이터를 집어 넣고 JSONObject를 JSONArray객체에 put 하면 된다.

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

    JSONObject jsonObject = new JSONObject();

    jsonObject.put("test11111", "test11111");
    jsonObject.put("test22222", "test22222");

    JSONObject testData = new JSONObject();
    data.put("test33333", "test33333");
    data.put("test44444", "test44444");
    data.put("test55555", "test55555");
    data.put("test66666", "test66666");
    data.put("test77777", "test77777");

    JSONArray arrayTest = new JSONArray();
    arrayTest.add(testData);

    arrayTest.put("REQ_DATA", req_array);

테스트 결과

package com.sbs.khr.test.controller;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestController {

    @RequestMapping("test")
    public String showTest() {
        return "안녕???";
    }

    @RequestMapping("test2")
    public String showTest2() {

        JSONObject jsonObject = new JSONObject();

        String name1 = "오잉";
        String name2 = "오잉2222";
        jsonObject.put("test1", name1);
        jsonObject.put("test2", name2);

        JSONObject test = new JSONObject();

        test.put("test3", "3333");
        test.put("test4", "4444");
        test.put("test5", "5555");
        test.put("test6", "6666");
        test.put("test7", "7777");

        JSONArray req_array = new JSONArray();
        req_array.add(test);



        //return req_array.toJSONString();
        return test.toJSONString();

    }
}
Array를 JSONObject에 .put을 할 수도 있지만 
결과가 만족스럽지 않아 
아직까지는 굳이 이렇게 사용하지 않아도 될 것 
같다는 생각이.... 든다..
필요하다면 JSONArray 객체를 조금 더 알아보고 
사용해도 좋을 것같다. 
728x90
반응형
LIST