반응형
Spring Boot의 JPA 저장소에 대해 "유형 검증 완료 없음"
저는 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")
컨트롤러 클래스에서 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
Bean 클래스를 만든 인터페이스입니다.SeqServiceBean
.에서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]
나는 그 오류를 이해할 수 없다.콩이랑 무슨 상관이야?
잘못된 패키지를 스캔하고 있었습니다.EnableJpaRepositories
.거기에는 없다org.mdacc.rists.cghub.ws.repository
패키지.그 대신 다음을 사용합니다.
@EnableJpaRepositories("org.mda.rists.cghub.ws.repository")
스프링 부트에는 특별한 코드 레이아웃이 필요하지 않지만 도움이 되는 베스트 프랙티스가 몇 가지 있습니다.코드 구조의 베스트 프랙티스에 대해서는, 스프링 부트 메뉴얼을 참조해 주세요.
언급URL : https://stackoverflow.com/questions/36072445/no-qualifying-bean-of-type-for-jpa-repository-in-spring-boot
반응형
'programing' 카테고리의 다른 글
Oracle SQL 쿼리를 테스트하기 위한 온라인 데이터베이스? (0) | 2023.03.07 |
---|---|
HTTPie를 사용하여 중첩된 JSON 개체 전송 (0) | 2023.03.07 |
Javascript: Ajax와 함께 JSON 개체를 보내시겠습니까? (0) | 2023.03.07 |
폼 제출을 포함한 모든 http 요청을 대행 수신하는 방법 (0) | 2023.03.07 |
jgrapht 심플 그래프를 json으로 시리얼화하려면 어떻게 해야 하나요? (0) | 2023.03.07 |