본문 바로가기

TIL(Today I Learned)

TIL-230724(클론코딩-오늘의집(3))

📝오늘 공부한 것

  • 클론코딩 - '오늘의 집'  (게시글, 댓글) 좋아요 기능 구현

 

⛔문제점

[처음 작성한 코드]

[에러]

[에러메시지]

ERROR 36172 --- [nio-8080-exec-7] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.dao.InvalidDataAccessApiUsageException: The given id must not be null] with root cause
java.lang.IllegalArgumentException: The given id must not be null

 

게시글 좋아요와 같은 코드로 댓글 좋아요를 구현했는데

게시글은 잘 잘 작동하지만 댓글 좋아요는 에러가 나왔다. 계속 null값이 나온다고 한다.

코드를 이것저것 수정해봐도 계속 같은 에러가 나왔다.

그래서 다른분께 물어봤더니 @PathVariable을 생략해서 그런 것 같다고 하셨다.

처음코드를 작성할 때 갑자기 @PathVariable을 생략해도 되는지 아닌지 헷갈려서 chatGPT에 물어봤었는데 생략해도 된다고 했었다..

GPT가 완전 반대로 알려줬었다!!!!!!!!!!!!!!

@PathVariable은 생략할 수 없고, @RequestParam은 생략 가능한데ㅠㅠ

 

💯해결 

@PathVariable을 넣어주니 잘 작동했다!!!

 

알게 된 점

https://jsonobject.tistory.com/475

 

Spring Boot, @PathVariable 사용법 정리

@PathVariable @PathVariable 파라메터를 사용하면 아래와 같이 URI의 일부를 변수로 전달할 수 있다. @GetMapping("/bars/{barId}") fun getBar(@PathVariable(value = "barId") barId: Optional) @PathVariable 파라메터는 생략이 불

jsonobject.tistory.com

https://mindols.tistory.com/107

 

@PathVariable, @RequestParam [Spring]

01. @PathVariable 란? @RequestMapping 의 URL 에서의 ({})의 명시된 변수를 받아온다.@PathVariable을 이용하여 URI 템플릿 중에서 어떤 파라미터를 가져올지 결정할 수 있습니다. 라는 형식으로 view단에서 파라

mindols.tistory.com

@PathVariable 어노테이션은 삭제할 수 없음!!

 

느낀 점🤔

ChatGPT는 너무 믿지 말자.......