반응형
- jackson 라이브러리 사용하여 @ResponseBody에서 사용하기 -
우선 jackson 라이브러리를 사용하기 위해서 pom.xml 설정을 해줘야 하는데
jackson 관련된 라이브러리를 전부 설정해주자.
(사실 몇개만 있으면 사용가능하겠지만 귀찮으니 전부해주는것이다.)
▷pom.xml
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.2</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.1</version>
</dependency>
이제 jackson 라이브러리가 준비가 되었으니 바로 사용해보자.
사용처는 당연히 ajax 통신에서 map 같은것으로 return을 해줄때 자동으로 json형태로 변환해주는것이다.
▶예제1)
@RequestMapping(value = "/test.do")
public @ResponseBody HashMap<String, Object> test() {
map.put("mine", "it-record");
return map;
}
만약 pom.xml에서 라이브러리만 추가해줬는데
작동을 안하고 에러만 발생하는 경우가 생긴다면
servlet.xml 에서 따로 설정을 추가로 해주도록 한다.
▷servlet.xml
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</list>
</property>
</bean>
[참고] : ttps://yookeun.github.io/java/2014/11/21/spring-json/
반응형
댓글