我正在用Spring Boot实现Rest API。由于我的实体类来自另一个包的包,所以我必须使用注释entityscan
来指定。此外,我使用enableJparepositories
指定定义JPA存储库的包。下面是我的项目的样子:
//Application.java
@Configuration
@EnableAutoConfiguration
@ComponentScan
@EntityScan("org.mdacc.rists.cghub.model")
@EnableJpaRepositories("org.mdacc.rists.cghub.ws.repository")
在我的controller类中,我有一个SeqService对象自动连线。
//SeqController.java
@Autowired private SeqService seqService;
@RequestMapping(value = "/api/seqs", method = GET, produces = APPLICATION_JSON_VALUE)
public ResponseEntity<List<SeqTb>> getSeqs() {
List<SeqTb> seqs = seqService.findAll();
return new ResponseEntity<List<SeqTb>>(seqs, HttpStatus.OK);
}
seqservice
是一个接口,我通过它为seqserviceBean
创建了一个Bean类。在seqServiceBean
中,我自动连接了JPA存储库:
// SeqServiceBean.java
@Autowired private SeqRepository seqRepository;
@Override
public List<SeqTb> findAll() {
List<SeqTb> seqs = seqRepository.findAll();
return seqs;
}
//SeqRepository.java
@Repository
public interface SeqRepository extends JpaRepository<SeqTb, Integer> {
@Override
public List<SeqTb> findAll();
public SeqTb findByAnalysisId(String analysisId);
}
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.mda.rists.cghub.ws.repository.SeqRepository] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1373) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1119) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545) ~[spring-beans-4.2.5.RELEASE.jar:4.2.5.RELEASE]
我不明白这个错误。跟排位bean有什么关系?
您扫描了enablejparepositories
中的错误包。没有org.mdacc.rists.cghub.ws.repository
包。因此,请改用以下内容:
@EnableJpaRepositories("org.mda.rists.cghub.ws.repository")
Spring Boot不需要任何特定的代码布局来工作,然而,有一些最佳实践会对您有所帮助。查看spring boot文档中关于构造代码的最佳实践。
我正在用Spring Boot实现Rest API。因为我的实体类来自另一个包,所以我必须用注释来指定它。另外,我使用来指定定义JPA存储库的包。下面是我的项目的样子: 在我的controller类中,我有一个SeqService对象Autowired。 是一个接口,我从它为创建了一个Bean类。在中,我对JPA存储库进行了描述: 我不明白这个错误。和排位赛bean有什么关系?
我试图通过BaseRepository接口和BaseRepositoryImpl扩展**SimpleParepository** BaseRepositoryImpl扩展了**SimpleParepository**并实现了BaseRepository。 此外,我还有一些其他的存储库,如CandidateRepository和员工存储库,它们扩展了基本存储库。 下面您可以看到以下错误代码: 要查看
我有一个springboot项目,为了执行请求,我正在连接到我的mysql数据库。我有一个实体ExportBatch: 我在ExportBatchRepository中定义了一个新方法: 在我的控制器里,我是这样做的: 当我调用“/GetLastBatchsProblemes”时会遇到这个异常:java.lang.ClassCastException:[Ljava.lang.Object;不能强制
我最近尝试将r2dbc与postgres“0.8.8.RELEASE”(pg r2dbc maven dependecy)和spring boot“2.5.2”一起使用 我在应用程序中声明了以下属性。yml: 我的pplication.java: 我明确指出,“fr.company.common”在另一个子项目中,有自己的实体 我的DatabaseConfig类: 我的存储库: 我的实体: 最后,
问题内容: 我使用的是Spring-boot,因此在Tomcat 7中部署了战争。启动应用程序时,我得到以下信息: 这是我的应用程序启动的方式: 当我的Spring控制器处理连接时: 它在userService上执行getUser: 使用userDao查找实体: 我在/ src / main / resources中具有以下spring-config.xml: 最后但并非最不重要的是以下/src/
我正在尝试使用spring library for google cloud API: Spring-Cloud-gcp-starter-vision 但Spring应用程序上下文无法加载,出现错误: 引起原因:org.springframework.beans.factory.不满意依赖异常:错误创建在类路径资源[org/spring框架/云/gcp/自动配置/视觉/CloudVisionAut