지니의 개발로그
[Spring] @ResponseBody로 데이터 반환하기 본문
🚩 20240517 TIL 내일배움캠프 #32일차
🔴 문제
(...생략)
@Controller
@RequestMapping("/response")
public class ResponseController {
@GetMapping("/json/class")
public Star helloClassJson() {
return new Star("jinny", 22);
}
}
위 코드 실행 시
Error resolving template [response/json/class], template might not exist or might not be accessible by any of the configured Template Resolvers
🟠 분석
템플릿이 없다는 오류가 발생.
HTML반환하려는 것 아님,
그냥 데이터를 반환하려는 것이다라는 의미 전달 필요.
ResponseBody Annotation 추가하기
🟡 시도
@GetMapping("/json/class")
@ResponseBody
public Star helloClassJson() {
return new Star("jinny", 22);
}
🟢 배움
@Controller로 import한 경우
ResponseBody 애너테이션(Annotation) 누락 주의
cf.
@RestController를 import한 경우
@RestController = @Controller + @ResponseBody
@RestController를 사용하면 해당 클래스의 모든 메서드에 @ResponseBody 애너테이션이 추가되는 효과를 부여한다.
'내일배움캠프' 카테고리의 다른 글
@RestController와 @Controller 차이 (0) | 2024.05.22 |
---|---|
[Spring] HTTP 응답에서 데이터 표현 형식의 차이 (text/plain vs. application/json) (0) | 2024.05.21 |
API란? (TIL #31일차) (0) | 2024.05.17 |
서버와 네트워크 (TIL #29일차) (0) | 2024.05.16 |
[Java] 버퍼의 개행문자 제거. 라인을 읽어주고 버리기 (TIL #28일차) (0) | 2024.05.14 |