오류 로그

Unknown return value type [java.lang.Integer]

뚜껑뚜 2022. 2. 17. 17:23

에러 발생 상황


아이디 중복 체크를 구현하고 있는데 자꾸 IllegalArgumentException : Unknown return value type [java.lang.Integer] 이 발생했다. 

 

 

문제 파악


어떤 글을 보고 따라하고 있었는데 그 글에는 컨트롤러에 @ResponsBody를 붙였는데 난 굳이 필요하지 않은 줄 알고 생략했다. 근데 예외 검색해보니 @ResponsBody를 안 붙여서 나는 오류라고 한다. 넘겨짚지 말기...

 

@ResponseBody

서버에서 클라이언트로 응답 데이터를 전송하기 위해서 @ResponseBody 를 사용하여 HTTP 요청 본문에 담긴 값들을 자바 객체로 변환 시켜 객체에 저장

 

 

문제 해결


@PostMapping("/idCheck")
@ResponseBody
public int idCheck(@RequestParam("id") String id) {
    log.info("전달받은 id={}", id);
    int cnt = memberRepository.idDupCheck(id);
    log.info("cnt={}", cnt);
    return cnt;
}

@ResponseBody를 붙여주니 예외가 나지 않는다.