我无法在春季注入CRUD存储库 我真的很沮丧,我找不到有效的解决方案
存储库
@Repository
public interface EntityRepository extends CrudRepository<entity,Long>{
}
@Autowired EntityRepository eR
错误:
..需要找不到的EntityRepository
类型的Bean
Consider defining a bean of type 'EntityRepository' in your configuration.
我的主要人
@SpringBootApplication
@ComponentScan({"de.xyz.*"})
@EntityScan("de.xyz.entities")
@EnableJpaRepositories("de.xyz.*")
//@EnableEurekaClient
public class Application extends SpringBootServletInitializer {
public static void main(String[] args){
SpringApplication.run(Application.class, args);
}
}
答案 0 :(得分:0)
另一种方法是使用basePackages字段;这是ComponentScan批注中的一个字段。
@ComponentScan(basePackages = {"de.xyz.repository"})
public class Application extends SpringBootServletInitializer {
//
}
答案 1 :(得分:0)
第1步: 尝试将两个类都包含在同一包中。这样,您可以缩小组件扫描的范围。删除所有其他注释,仅保留@SpringBootApplication
Note :
By default spring loads all the classes under the package of Application Class.
第2步::查看您的依赖项,确认您已经包括了JPA存储库的依赖项。
第3步::发布代码的GIT Hub链接,以便可以进一步查看。
否则,将所有软件包添加到组件scan批注内,如下所示。 @ComponentScan({“ a.b.c”,“ a.b.c.dao”})
正如您已经提到的,有一个配置类正在创建Bean,请尝试将该类包包含在同一包中,或者将其包含在组件扫描中。
希望获得帮助。