Nellie's Blog

[TIL-221206화] 항해99 23일차 (DataIntegrityViolationException, IllegalArgumentException) 본문

회고록

[TIL-221206화] 항해99 23일차 (DataIntegrityViolationException, IllegalArgumentException)

Nellie Kim 2022. 12. 6. 21:35
728x90

트러블슈팅

1. 회원가입 api에서 post가 전송이 안되며 에러  (DataIntegrityViolationException)

서버 에러로그 -> DataIntegrityViolationException 

컨트롤러에서 signupRequestDto에서 정보를 제대로 못받아오는 현상이 있었다. 

Dto값도 맞게 넣고, 중복되지 않게 잘 넣었는데 어떤게 문제일까 2시간동안 헤맸다.

이유는 @Controller 이 어노테이션 때문 ...............................

@Controller어노테이션은 json타입으로 들어온다는 명시가 없기 때문에 Dto에서 정보를 못 받아 왔던 것이었다!

 

@RestController로 바꿔주니 바로 해결 되었다.

@RestController는 단순히 객체만을 반환하고 객체 데이터는 JSON형식으로 HTTP응답에 담아서 전송한다.

(@Controller는 Model객체를 만들어 데이터를 담고 View를 찾는다)

 

 

2. 로그인 api에서 post가 전송이 안되며 에러 (IllegalArgumentException)

UserService 에서 login메소드 매개변수 앞에 @RequestBody 추가해주니 정상 작동 되었다.

 

 

 

느낀점

컴퓨터는 생각보다 예민하고.. 섬세한 것 같다. 알아서 해주길 기대하면 안되는구나. 어릴 때는 컴퓨터가 알아서 해주는 줄 알았는데 아니었다. 에러가 왜 이렇게 많이 날까.

하루종일 숙련주차 과제를 했다. 왜이렇게 진행이 안되는 느낌인지..! 과제 빨리 하고 부족한 부분 자습하고 싶다.

 

 

https://velog.io/@dkajffkem/DataIntegrityViolationException-%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90