본문 바로가기
lecture.js/springboot

@SpringBootApplication

by malda 2019. 6. 19.

이상하게 JPA @Entity를 설정해도 테이블이 생성 안되고, @Repository를 설정했는데도 Bean을 못찾는 에러가 발생해서 삽질하다가 찾아낸 결론....

 

패키기 구조 문제였음...

 - @SpringBootApplication이 설정된 패키지 구조

    microservice.multiplication.SocialMultiplicationApplication

 

 - 내가 추가한 패키지 구조

    microservice.learning.jpa.domain.SampleEntity

    microservice.learning.jpa.repository.SampleEntityRepository

 

즉, SpringBoot는 @SpringBootApplication이 설정된 Application클래스 경로 기준으로 bean scan을 한다.

위 예제에서는 SocialMultiplicationApplication이 microservice.multiplication 하위에 있으므로 자동 스캔 대상이 microservice.multiplication.*이 되는 것임

 

따라서, microservice.learning.*에 아무리 만들어봤자 스캔대상이 안되고 있었던 것....

 

스프링부트의 자동화가 편하긴 한데 내구 구조를 제대로 모르면 나처럼 삽질함..

조심하시길...

 

 

'lecture.js > springboot' 카테고리의 다른 글

spring-boot-starter 와 spring-boot-starter-web의 차이  (0) 2019.06.19
h2 DB설정  (0) 2019.06.19