[Spring]@RestController, @Controller 개념 및 예시
1.@RestController
2.@Controller
3.@RestController과 @Controller예시
1. @RestController
- @RestController을 확인해보면 @ResponseBody와 @Controller이 들어있다.
- @ResponseBody : 응답할 내용을 HTTP 메시지 바디에 담아서 응답한다.
- @ResponseBody로 인해서 return 되는 것들은 view 이름을 탐색하는 게 아니라 HTTP 메시지 바디에 담겨서 응답이 된다.
2. @Controller
- @RestControlle와 달리 @ResponseBody가 없다.
- @RestController과 @ResponseBody가 없고 그냥 @Controller인 상태에서 return을 하게 되면 view 이름을 탐색한다. 없을 경우 5xx 에러가 뜬다.
- @RestController처럼 HTTP 메시지 바디에 응답 메시지를 담고 싶으면 해당되는곳에 @ResponseBody를 해주거나 클래스 단위로 하고 싶을 경우 클래스 선언해놓은 곳 위에다가 @ResponseBody를 하면 된다.
3. @RestController과 @Controller 예시
@RestController예시
@RestController
public RestControllerClass {
@GetMapping("/restcontroller")
public String confirm() {
return "ok";
}
- 결과
@Controller예시
@Controller
public ControllerClass{
@GetMapping("controller")
public String confirmController() {
return "ok"
}
- "ok"라는 view 이름이 없으면 5xx 에러
@Controller
public ControllerClass {
@ResponseBody
@GetMapping("controller")
public String confirmController() {
return "ok";
}
@Controller
@ResponseBody
public ControllerClass {
@GetMapping("controller")
public String confirmController() {
return "ok";
}
- 결과
'Spring Boot' 카테고리의 다른 글
[Spring] @ScriptAssert 오류내용 및 해결방법 (0) | 2021.12.28 |
---|---|
[Spring] 메시지, 국제화 개념 및 사용 방법 (0) | 2021.12.26 |
[Spring]싱글톤 패턴의 개념 및 예제 (0) | 2021.11.19 |
[Spring]스프링 부트 중복으로 빈을 등록했을때 해결 방법(@Autowired, @Qualifier, @Primary) (1) | 2021.11.01 |
[Spring]스프링부트 H2 데이터베이스 연동 오류 (2) | 2021.11.01 |
댓글
이 글 공유하기
다른 글
-
[Spring] @ScriptAssert 오류내용 및 해결방법
[Spring] @ScriptAssert 오류내용 및 해결방법
2021.12.28 -
[Spring] 메시지, 국제화 개념 및 사용 방법
[Spring] 메시지, 국제화 개념 및 사용 방법
2021.12.26 -
[Spring]싱글톤 패턴의 개념 및 예제
[Spring]싱글톤 패턴의 개념 및 예제
2021.11.19 -
[Spring]스프링 부트 중복으로 빈을 등록했을때 해결 방법(@Autowired, @Qualifier, @Primary)
[Spring]스프링 부트 중복으로 빈을 등록했을때 해결 방법(@Autowired, @Qualifier, @Primary)
2021.11.01