인프런 커뮤니티 질문&답변

junhyoeung kim님의 프로필 이미지
junhyoeung kim

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

API

에러

작성

·

210

0

안녕하세요 멤버서비스를 가져오는데 이부분에서 cannot be applied to 에러가 납니다 분명히 ; 있는데 저 표시가 나오네요
MemberService memberService = new MemberService();



답변 2

0

프로젝트 코드 확인해보았습니다.

제가 말씀드린것은 기본생성자를 지정하라는 내용이였는데,  final 키워드가 선언되어 있어 생성자에서 초기화를 해줘야하기 때문에 기본생성자 지정은 불가능하네요.

돌아와 말씀하신 문제를 해결하려면 아래와 같이 new MemberService ( )  인자로 MemberRepository를 구현한 클래스가 있어야 합니다.

 

class MemberServiceTest {
MemberRepository memberRepository = new MemoryMemberRepository();
MemberService memberService = new MemberService(memberRepository);

위와 같이 작성하여 오류를 막을 수 있으나

서로 다른 테스트의 동일한 환경을 보장하기 위해선 @BeforeEach 를 작성해서 매 테스트 시 초기 설정으로 진행해야 합니다.

 

0

안녕하세요. junhyoeung kim님, 공식 서포터즈 OMG입니다.

MemberService의 생성자를 정의하여서 기본생성자가 생성되지 않는 것으로 보입니다.

기본 생성자를 정의해주세요.

public class MemberService {

    public MemberService {}  // <<-- 추가
}




감사합니다.

그 생성자는 Main/java/hello.hell_spring/service 안에 있습니다.

public class MemberService {

private final MemberRepository memberRepository;

public MemberService(MemberRepository memberRepository){
this.memberRepository = memberRepository;
}

축약하여 올리신 에러메시지 문구만으로 확인이 어렵네요.

코드 확인하여 로컬에서 확인해봐야 할 것 같아요.



전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx

주의: 업로드시 권한 문제 꼭 확인해주세요



감사합니다

https://drive.google.com/file/d/138k6P3ZuKEksY1IE6b-gqCW4BZ1pdzD2/view?usp=sharing

 

 

 

혹시몰라 원드라이브도 공유합니다.

https://1drv.ms/u/s!AubXz5rKCteAu1NGGa6wjHTjLBq0?e=2Jk7Po

junhyoeung kim님의 프로필 이미지
junhyoeung kim

작성한 질문수

질문하기