물에 살고싶은 개발자

Restful하게 json을 사용해보자( feat.LinkedHashMap() ) 본문

Spring Framework

Restful하게 json을 사용해보자( feat.LinkedHashMap() )

돼지사랑 2016. 7. 8. 14:37

스프링에서 클라이언트와 통신할때 json을 사용하고자 하는경우가 있다.


일단 pom.xml에


<!-- Jackson -->

<dependency>

<groupId>org.codehaus.jackson</groupId>

<artifactId>jackson-mapper-asl</artifactId>

<version>1.9.13</version>

</dependency>


를 추가해줘서 잭슨 라이브러리를 추가해준다.


그리고 컨트롤러에서




		StringBuffer sbuf = new StringBuffer();
		ObjectMapper om = new ObjectMapper(); 

		HashMap response = new LinkedHashMap();
		response.put("name", "test");
		response.put("code", 1001);

		try {
		    sbuf.append(om.writeValueAsString(response));
		} catch (JsonGenerationException e) {
		    e.printStackTrace();
		} catch (JsonMappingException e) {
		    e.printStackTrace();
		} catch (IOException e) {
		    e.printStackTrace();
		}

		return sbuf.toString();


요러코롬 써주면 결과값으로 json형태의 결과가 나온다.


Ps.해쉬맵에 LinkedHashMap을 사용한 이유는 해쉬맵 특성상 순서가 뒤섞이는데 보통 

json을 쓸 경우 순서대로 출력하는게 필요할때도 있기때문이다. LinkedHashMap은 해쉬맵에 있는 요소들을 순서대로 정리시켜서 출력해준다.


Comments