티스토리 뷰

Java

gson 사용법

토마's 2017. 6. 28. 18:36

안녕하세요. 오늘은 gson 사용 방법에 대해서 포스팅 해보려고 합니다.

gson은 json을 조금 더 편리하게 사용할 수 있도록 구글에서 만든 json 관련 라이브러리입니다.

gson을 사용하면 자바 객체를 json으로 또는, json을 자바 객체로 쉽게 변환시켜 주기 때문에 아주 편리한 기능입니다.

 

우선, pom.xml의 다음과 같은 dependency를 추가 합니다.

<!-- Gson: Java to Json conversion -->
<dependency>
  <groupid>com.google.code.gson</groupid>
  <artifactid>gson</artifactid>
  <version>2.3</version>
</dependency>

 

다음은 자바 코드에서 gson을 사용하는 방법에 대해서 예제를 통해 설명하겠습니다.

우선 화면 상에서 ajax를 이용해 예제 리스트를 호출하는 자바스크립트 코드는 아래와 같습니다.

$(document).ready(function() {
               var params = $("#testFrm").serialize();
		$.post("/getTestReviewList", params, function(data) {
			var result = JSON.parse(data);

                        console.log(data); // gson 객체 로그 출력
                        console.log(result); // json으로 파싱한 객체 로그 출력
		});
});

 

그리고 자바에서 다음과 같이 처리합니다.

/**
	 * 테스트용 목록을 가져온다.
	 */
	@RequestMapping(value="/getTestReviewList")
	@ResponseBody
	public String getTestReviewList(HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		int test_id = ServletRequestUtils.getIntParameter(request, "testId", 0);
		
		Test test = new Test();
		test.setOkr_goals_id(test_id);
		
		Gson gson = new Gson(); // gson 객체 생성
		return gson.toJson(testService.getTestReviewList(test )); // gson을 이용해 자바 객체 리스트를 json 변환
	}

 

tesService를 통해서 dao를 통해 DB에 접근해서 가져온 데이터를 gson.toJson을 통해 json객체로 변환시겨 주고 리턴합니다.

그리고 위의 자바스크립트에서 출력한 내용은 웹 브라우저에서 F12를 누르면 나타나는 개발자 도구의 console 창에서 확인할 수 있습니다.

 

<gson 객체 콘솔 로그>

 

<json으로 파싱한 객체 로그 출력>

 

 

이와 같이 gson을 통해 json으로 변경한 데이터를 가지고 화면상에서 원하는 대로 가공해서 사용하시면 됩니다.

gson에 대해 더욱 자세히 알고 싶으면 다음을 참조하시면 됩니다.

 

- gson-github 홈페이지 : https://github.com/google/gson

 

이상으로 gson 사용법에 대한 포스팅을 마치도록 하겠습니다. 감사합니다 :)