Spring :通过字段、CrudRepository 扩展接口表达的不满足依赖关系



我已经在用户定义的接口中扩展了CrudRepository<ClassName, Id>,但是在尝试使用@Autowired注入时,我得到了以下错误:

创建名为"helloController"的 bean:未满足的依赖项 通过字段"danCorePrivateRepository"表示;嵌套异常 is org.springframework.beans.factory.NoSuchBeanDefinitionException: No 合格豆类型 'com.sgcorp.repository.DanCorePrivateRepository' 可用:预期 至少 1 个符合自动连线候选条件的 Bean。

您好控制器.java

@RestController
@RequestMapping("/hello")
public class HelloController {
    @Autowired
    private DanCorePrivateRepository danCorePrivateRepository;
    @RequestMapping(value = "/service", method= RequestMethod.GET)
    public String selectService(){  
        String result = "<html>";   
        result += "<div>"+danCorePrivateRepository.findAll()+"</div>";
        return result+ "</html>";
    }
}

DanCorePrivateRepository.java(用户定义的界面(

public interface DanCorePrivateRepository extends CrudRepository<DanaModel, String> {
}

请建议为什么它不能正确@Autowired?

注意:对于其他一些项目,它正在工作。

请在配置类的顶部添加@EnableJpaRepositories注释。 这个@EnableJpaRepositories注释具有basePackages或basePackageClasses属性,通过该属性,您可以指定要由Spring Data JPA扫描的软件包(用@Repository注释

(。

我认为您错过了用户定义的接口DanCorePrivateRepository上的注释@RepositoryRestResource@Repository。您必须将其标记为以下内容 -

@Repository
@RepositoryRestResource
public interface DanCorePrivateRepository extends CrudRepository<DanaModel, String> {
}

@RepositoryRestResource注释将指导 Spring 为您的仓库创建 RESTful 端点。

相关内容

最新更新