programing

Spring Boot의 JPA 저장소에 대해 "유형 검증 완료 없음"

muds 2023. 3. 7. 22:07
반응형

Spring Boot의 JPA 저장소에 대해 "유형 검증 완료 없음"

저는 Spring Boot과 함께 Rest API를 구현하고 있습니다.내 엔티티 클래스는 다른 패키지의 패키지에서 왔기 때문에 주석을 사용하여 지정해야 했습니다.EntityScan그리고 저는EnableJpaRepositoriesJPA 저장소가 정의되는 패키지를 지정합니다.프로젝트 내용은 다음과 같습니다.

여기에 이미지 설명 입력

//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);
}

SeqServiceBean 클래스를 만든 인터페이스입니다.SeqServiceBean.에서SeqServiceBeanJPA 저장소를 자동 설정했습니다.

// 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

반응형