아이엠 !나이롱맨😎
article thumbnail
Published 2021. 1. 18. 23:20
[Spring] @RestController 란? ...
반응형

 

이번 글에서는 @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에 대해 알아보았습니다.

 

 

 

읽어주셔서 감사합니다.

질문은 언제나 환영합니다.

 

"난 반드시 백엔드 왕이 될거야"

 

반응형

article prev thumbnail
article next thumbnail
profile on loading

Loading...