반응형
이번 글에서는 @RestController라는 어노테이션에 대해 알아 보겠습니다.
@RestController는 컨트롤러에서 브라우저로 데이터를 보낼 때 이를 처리해서 보낼 수 있습니다. 기본형 데이터, VO 객체의 속성 값, Map에 저장된 데이터 등을 보낼 수 있게 해줍니다.
우선 @RestController를 사용하려면 스프링 4.0이상이여야 합니다. 만약 3.x 버전을 이용한다면 pom.xml에서
<properties> <java-version>1.6</java-version> <org.springframeworkversion>4.1.1.RELEASE</org.springframework-version> <org.aspectj-version>1.6.10</org.aspectj-version> <org.slf4j-version>1.6.6</org.slf4j-version> </properties>
4.*.* 버전으로 바꿔주시면 됩니다.
그리고 JOSN 형식으로 전달하기 위한 JSON 관련 라이브러리를 다음과 같이 추가해주시면 됩니다.
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.4</version>
</dependency>
# VO 객체 전달하기
@RestController
@RequestMapping(value="/test/*")
public class TestController {
Logger logger = LoggerFactory.getLogger(TestController.class);
@RequestMapping(value="/member")
public MemberVO member(){
MemberVO vo = new MemberVO();
vo.setId("kbj");
vo.setPwd("1234");
vo.setName("김병준");
vo.setEmail("kbj@test.com");
return vo;
}
}
# 컬렉션 객체 전달하기
package com.myspring.pro29.ex01;
import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
@RestController
@RequestMapping(value="/test/*")
public class TestController {
Logger logger = LoggerFactory.getLogger(TestController.class);
@RequestMapping(value="/memberList")
public List<MemberVO> listMembers(){
List<MemberVO> list = new ArrayList<MemberVO>();
for(int i=0;i<10;i++) {
MemberVO vo = new MemberVO();
vo.setId("kbj_"+i);
vo.setPwd("1234");
vo.setName("김병준_"+i);
vo.setEmail("kbj@test.com"+i);
list.add(vo);
}
return list;
}
}
이상 @RestController에 대해 알아보았습니다.
읽어주셔서 감사합니다.
질문은 언제나 환영합니다.
"난 반드시 백엔드 왕이 될거야"
반응형
'...' 카테고리의 다른 글
[Spring] root-context와 servlet-context (2) | 2021.01.20 |
---|---|
[tomcat] Not allowed to load local resource 에러 (1) | 2021.01.20 |
Current request is not of type [org.springframework.web.multipart.MultipartHttpServletRequest] 에러 (0) | 2021.01.18 |
[Js] ajax 파일 업로드하기 (0) | 2021.01.18 |
[Spring] Dispatcher-Servlet이란? (0) | 2021.01.17 |