@ResponseBody 어노테이션은 데이터를 클라이언트쪽에 보낼 때 데이터를 JSON 또는 XML 형식으로 직렬화해 반환할 때 사용한다. (이때, 엔티티는 직렬화할 때 문제가 발생하므로 DTO를 따로 만들어서 보내는 것이 좋다.)
따라서 POST, PUT, DELETE 작업같은 경우는 돌려주는 값이 없으므로 ResponseEntity<String>로 리턴타입을 지정해
성공,실패에 대한 메세지를 담아 리턴해 주는 것이 좋다.
예: return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body("수정 권한이 없습니다."); //HTTP 응답코드 401오류
정리하자면,
ajax로 요청이 들어왔을 때,
- 반환 데이터가 없는 경우(POST, PUT, DELETE): ResponseEntity<String>로 리턴타입 지정하고 성공실패 메세지body에 담아 보내기
- 반환 데이터가 있는 경우(GET): @ResponseBody 어노테이션을 붙여 반환데이터의 타입으로 리턴타입 지정
'springboot' 카테고리의 다른 글
[springboot] HTTP 전송 데이터의 형식 JSON, 직렬화 역직렬화 (1) | 2024.04.06 |
---|---|
[springboot] 웹 브라우저가 서버와 상호작용하는 방법 (0) | 2024.04.06 |
[springboot] Controller, Service, Repository 메서드명 규칙 (0) | 2024.02.20 |
[springboot] 구글 로그인 api 테스트 사용자 추가 (0) | 2024.02.18 |
[springboot] 구글 로그인 api 연동 (0) | 2024.02.18 |