SpringBoot JPA 中無法注入 JpaRepository 介面的問題及解決方案
阿新 • • 發佈:2019-02-06
錯誤:
No qualifying bean of type 'xxx.xxx.xxx' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
或:
Not a managed type: class xxx.xxx.xxx
解決方案:
方案一、把 @SpringBootApplication 註解的 SpringBoot 入口類移到上層 root 包中,使 JpaRepository 子介面位於 root 包及其子包中
。方案二、在 SpringBoot 入口類上新增
(1) @ComponentScan(basePackages = "xxx.xxx.xxx"):掃描 @Controller、@Service 註解;
(2) @EnableJpaRepositories(basePackages = "xxx.xxx.xxx"):掃描 @Repository 註解;(3) @EntityScan(basePackages = "xxx.xxx.xxx"):掃描 @Entity 註解;