JDBC 회원 Repository 코드를 작성했을 때 에러가 발생함
--> spring boot 3에는 Jakarta EE 9이 포함됨에 따라 javax 관련 패키지명이 javax에서 jakarta로 변경되었음. 이에 강의에 기재된 javax가 아니라 jakarta로 기재하여 수정
(참고 : https://www.inflearn.com/questions/822610/javax-persistence가-import되지-않습니다)
//import javax.sql.DataSource;
import jakarta.sql.DataSource;
해결 완료!
Could not autowire. No beans of 'MemberRepository' type found.
- @Autowired : 생성자에 해당 구문이 붙어 있으면, 스프링이 연관된 객체를 스프링 컨테이너에서 알아서 찾아서 넣어줌.
- 이렇게 객체 의존관계를 외부에서 넣어주는 게 DI(Dependency Injection), 의존성 주입
회원서비스 스프링 통합 테스트에서 에러 발생
--> 스프링컨테이너가 관리하는 객체만 주입해주는 거니까, MemberRepository 상단에 @Repository 표기를 잊은 건 아닌지 확인하기.
package hello.hellospring.repository;
import hello.hellospring.domain.Member;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Optional;
@Repository
public interface MemberRepository {
Member save(Member member);//회원 저장 후 저장된 회원 반환
Optional<Member> findById(Long id);//null 반환 대신 Optional로 처리하는 게 트렌드
Optional<Member> findByName(String name);
List<Member> findAll();
}
수정 후 해결 완료!
'스프링부트' 카테고리의 다른 글
[Spring Boot 3 & Spring Framework 6 마스터하기!] SpringFramework 고급 기능 살펴보기(1) (0) | 2025.03.20 |
---|---|
Spring @Component vs @Bean (0) | 2025.03.12 |
[Spring Boot 3 & Spring Framework 6 마스터하기!] Spring Framework를 사용하여 Java 객체를 생성하고 관리하기 (0) | 2025.02.23 |
[Spring Boot 3 & Spring Framework 6 마스터하기!] Java Spring Framework 시작하기 (0) | 2025.02.23 |
[스피링부트 입문 김영한] 세팅 (0) | 2024.11.19 |