log

[Spring boot] 게시글 수정 기능 구현하면서 발생한 오류 정리 본문

SpringBoot

[Spring boot] 게시글 수정 기능 구현하면서 발생한 오류 정리

sun_young 2023. 7. 26. 17:40

1. Missing URI template variable for method

컨트롤러에서 URI에서 받아오는 변수명과 PathVariable에 사용한 변수명이 달라서 발생한 문제

이런식으로 URI에 {post_id}와 @PathVariable int post_id처럼 이름을 맞춰준다!

 

* 받아오는 변수가 하나라서 그냥 변수명 앞에 @PathVariable만 추가해주면 되는데 여러 개라면  @PathVariable("post_id") << 이런식으로 이름을 지정해줘야 한다

 

2. Spring Boot Jpa IllegalArgumentException

게시글 엔티티에서 지정한 타입과 찾고자 하는 변수의 타입이 달라서 생긴 문제

이렇게 엔티티에서 id를 int로 정의하였기 때문에 repository에서 findBy~를 사용할 때도 int로 해준다

너무 당연한거지만 long으로 타입 설정한 줄 알고...

 

3. pring.jpa.open-in-view is enabled by default. Therefore ~

로그에 이런식으로 경고문이 출력되는데 기능을 수행하는데는 문제가 없지만 그래도 혹시 몰라서 이 부분도 수정했다

 

🔎 왜?

기본적으로 spring boot에서는 spring.jpa.open-in-view를 true로 설정하고 있는데 이는 OSIV 측면에서 매우 부적절하다고 한다

 

📢 해결

application.properties에 spring.jpa.open-in-view=false를 추가한다!

 

참고 > https://mand2.github.io/spring/spring-boot/1/

 

spring.jpa.open-in-view 로그 오류 해결하기 :: 고라니의 개발일기🦌

spring.jpa.open-in-view 로그 오류 해결하기 2019-09-27 1. 문제상황 : 왜 로그에 warn이 뜨지? 스프링 부트 app을 시작하면 로그가 나오는데, 잘 보면 아래와 같이 warning 메세지가 뜬다 aWebConfiguration$JpaWebMvcCo

mand2.github.io