我正在用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对象Autowired。
//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.chub.ws.repository
包。所以,改用这个:
@EnableJpaRepositories("org.mda.rists.cghub.ws.repository")
Spring Boot不需要任何特定的代码布局来工作,但是,有一些最佳实践将对您有所帮助。请查看spring boot文档中关于构造代码的最佳实践。
我正在用Spring Boot实现Rest API。由于我的实体类来自另一个包的包,所以我必须使用注释来指定。此外,我使用指定定义JPA存储库的包。下面是我的项目的样子: 在我的controller类中,我有一个SeqService对象自动连线。 是一个接口,我通过它为创建了一个Bean类。在中,我自动连接了JPA存储库: 我不明白这个错误。跟排位bean有什么关系?
运行在Mongo存储库的单元测试中返回以下错误: UserRepositoryMongoImpl.java UserRepositoryMongoImplTests.java 最后一个:pom.xml null
我最近尝试将r2dbc与postgres“0.8.8.RELEASE”(pg r2dbc maven dependecy)和spring boot“2.5.2”一起使用 我在应用程序中声明了以下属性。yml: 我的pplication.java: 我明确指出,“fr.company.common”在另一个子项目中,有自己的实体 我的DatabaseConfig类: 我的存储库: 我的实体: 最后,
我已经浏览了http://docs.spring.io/spring-data/redis/docs/current/reference/html/,对我来说没有什么新内容。我想知道我错过了什么,我将感谢任何投入。 我使用Spring Data Redis 1.7.2.Release,Spring Boot 1.3.6.Release
我试图通过BaseRepository接口和BaseRepositoryImpl扩展**SimpleParepository** BaseRepositoryImpl扩展了**SimpleParepository**并实现了BaseRepository。 此外,我还有一些其他的存储库,如CandidateRepository和员工存储库,它们扩展了基本存储库。 下面您可以看到以下错误代码: 要查看
我有一个springboot项目,为了执行请求,我正在连接到我的mysql数据库。我有一个实体ExportBatch: 我在ExportBatchRepository中定义了一个新方法: 在我的控制器里,我是这样做的: 当我调用“/GetLastBatchsProblemes”时会遇到这个异常:java.lang.ClassCastException:[Ljava.lang.Object;不能强制