본문 바로가기
Tools/Eclipse & STS

[SPRING] @ResponseBody - jackson 라이브러리 활용하기 (ft. jackson 설정)

by 썸머워즈 2020. 9. 16.
반응형

- 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/

반응형


댓글

TOP