MessageConverter(Ajax-JSON 응답)

우 동현·2021년 10월 25일
0

더존비즈온양성과정

목록 보기
23/26

기초지식

  • @ResponseBody
    뷰 페이지를 응답하지 않고 return 값을 그대로 반환

MessageConverter

HTTP통신에서 일반 문자열이아닌 JSON이나 XML로 통신하기 위해 사용 ( 주로 Ajax통신 할 때 사용)

Ajax 통신
1. XML로 데이터 주고 받기 : XMLHttpReqeus(내장브라우저)

  • 통신하는데 필요한 데이터를 XML방식으로 주고받음
  • 브라우저에서 xml을 js로 조작해서 데이터를 전달하고 받은 데이터는 다시 js로 파싱(비효율적)
  1. JSON으로 데이터 주고 받기 : MessageConverter
  • 데이터를 JS 객체 형식으로 전달

설정

spring-servlet.xml
<mvc:annotation-driven>
         <!-- messageConvertert -->
         <mvc:message-converters>
                  <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                           <property name="supportedMediaTypes">
                                   <list>
                                            <value>text/html; charset=UTF-8</value> <!-- String에 대해서 인코딩 타입이 UTF-8인 text.html방식으로 응답 -->
                                   </list>
                           </property>
                  </bean>
           		  <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"><!-- 인코딩 타입이 UTF-8이고 JSON으로 응답 -->
							<property name="supportedMediaTypes">
									<list>
        				                      <value>application/json; charset=UTF-8</value>
    	                            </list>
                           </property>
                  </bean>
         </mvc:message-converters>
</mvc:annotation-driven>
pom.xml
<!-- jackson -->

<dependency>
   <groupId>com.fasterxml.jackson.core</groupId>
   <artifactId>jackson-databind</artifactId>
   <version>2.1.1</version>
</dependency>

0개의 댓글