월 17,600원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결스프링 핵심 원리 - 기본편
메서드 run 하면 console 내용이 안나와요 .
====================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 메서드 run 실행하면 코드가 원래 결과나 주소값이 출력되었는데 console 내용이 출력되지 않습니다 ㅠ 어떻게 해야할까요 ?
- 미해결스프링 핵심 원리 - 기본편
AutoAppConfigTest BasicScan() NoSuchBeanDefinitionException오류 발생
그전까진 모든 테스트를 통과했는데, 조회대상 빈이 2개이상일때 해결방법을 테스트 하는 과정에서 자꾸 AutoAppConfigest BasicScan()에서 NoSuchBeanDefinitionException오류가 발생합니다 ㅠㅠ파일 구글 드라이브 링크 첨부합니다.. 감사합니다https://drive.google.com/file/d/1CR8RZDO7Wf2VpildMbeLpTah5vYTtAZJ/view?usp=sharing
- 미해결스프링 핵심 원리 - 기본편
interface와 구현체에서 메서드도 같아야하나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]interface를 생성해야하는 이유는 이해가 됐는데 interface에서 작성한 메서드들을 구현체에서 오버라이딩하는데 이떄 오버라이딩하는 코드 말고 추가적으로 코드를 작성하는게 바람직한가요?예를들어 repository인터페이스를 구성할 때 Mysql을 이용하기 위한 레포지토리와 Memoryrepository를 따로 구현할 때 아무래도 DB에 저장하는 특성상 메서드들의 차이가 있지않을까하는데 이때 각 구현체에서 추가로 메서드를 작성하는게 옳은 방향인건지 잘 모르겠어요
- 해결됨스프링 핵심 원리 - 기본편
appconfig에 등록한거랑 @Component해서 등록한걸로 어느게 우선순위인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]web 라이브러리를 설치했는데parameter 0 of constructor in hello.core.member.memberserviceimpl required a single bean, but 2 were found이런 오류가 뜨더라고요appconfig안에 MemberRepository의 @Bean 과@Configuration //설정 public class AppConfig { @Bean public MemberService memberService() { return new MemberServiceImpl(memberRepository()); } @Bean public MemberRepository memberRepository(){ return new MemoryMemberRepository(); } .... }MemoryMemberRepository.class의 @component//@Component public class MemoryMemberRepository implements MemberRepository { private static Map<Long, Member> store= new HashMap<>(); @Override public void save(Member member) { store.put(member.getId(), member); } @Override public Member findById(Long memberId) { return store.get(memberId); } } 이렇게 두개가 겹쳐서 그런거같은데@Component를 지우니깐 잘되더라고요.둘다 우선순위가 따로 없는건가요?그리고 실습에서는 appconfig안에 Bean을 지웠나요?component를 지웠나요?열심히 들었는데 어디서 부터 실습을 잘못했는지 잘모르겠네요 죄송합니다.
- 미해결스프링 핵심 원리 - 기본편
MyLogger 질문 드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.package Hproject.core.common; import jakarta.annotation.PostConstruct; import jakarta.annotation.PreDestroy; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import java.util.UUID; @Component @Scope(value="request") public class MyLogger { private String uuid; private String requestURL; public void setRequestURL(String requestURL) { this.requestURL = requestURL; } public void log(String message){ System.out.println("["+ uuid+ "]"+ "[" + requestURL+"]"+message); } @PostConstruct public void init(){ uuid= UUID.randomUUID().toString(); System.out.println("["+ uuid+ "] request scope bean create "+this); } @PreDestroy public void close(){ System.out.println("["+ uuid+ "] request scope bean close "+this); } }해당 MyLogger 클래스에서 init() 메소드 안에서 ,uuid의 값을 랜덤으로 초기화 시켜 줬는데,이 메소드가 아니라 처음에 필드 선언 부분에서 초기화 시키는건 안되는건가요??
- 미해결스프링 핵심 원리 - 기본편
빈, 컨테이너도 넓은 의미에서 객체일까요 ??
듣다보니 쓰임이 많을것같은 클래스를 빈으로 등록하고, 그 빈들을 컨테이너가 관리하는데 이렇게하는 이유를 생각해보면 멤버서비스, 오더서비스처럼 호출이 잦은 클래스를 한곳에서 관리하면 접근이 편할 것 같습니다 이렇게 빈으로 관리하는 이유가 무엇인가요 ??예전에 질문드렸을 때 객체 하나 자체는 메모리가 많이 들지 않는다고 하셨습니다. 그럼 객체를 많이 만들어도 메모리를 절약하기 위함은 아닐 것 같은데 빈, 컨테이너 개념을 이용하는 다른 이유가 있나요 ??
- 미해결스프링 핵심 원리 - 기본편
UnsatisfiedDependencyException가 발생하는 테스트를 만들고 싶은데 안 됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)아니요3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]의존성 주입이 안 되는 상황을 테스트 하기 위해ㅅComponentScan의 basePackges를 멤버로 제한하고 orderService를 호출해서 UnsatisfiedDependencyException에러가 발생하는 테스트를 진행하는데 테스트가 오류가 발생합니다.ComponentScan의 basePachages 설정 제가 만든 테스트: UnsatisfiedDependencyException에러가 발생시 테스트를 성공하게 하는 것이 목표로그 결과로그결과 확대
- 미해결스프링 핵심 원리 - 기본편
무조건 인터페이스-구현체 를 나누는게 좋은 건 아니겠죠 ???
모든 상황에서 인터페이스(DiscountPolicy)-구현체(FixDiscountPolicy) 처럼 나누는게 좋은 건 아니겠죠 ??지금 상황처럼 정책이 바뀔 경우가 없다면 그냥 바로 구현체를 만드는 게 더 효율적인 것 같은데, 설계상 정책이 안바뀐다 하더라도 만약의 상황을 대비해 인터페이스를 만들어두는편인가요 ??
- 미해결스프링 핵심 원리 - 기본편
테스트코드에서 스프링컨테이너 호출 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]스프링 컨테이너 테스트 할 때 보통 ApplicationContext 인터페이스에 없는 메서드들도 있기 때문에 AnnotationConfigApplicationContext ac=new AnnotationConfigApplicationContext 을 쓰면 되는걸까요??
- 해결됨스프링 핵심 원리 - 기본편
강사님께서 말씀하시는 "클라이언트 코드"는 무엇인가요 ??
클라이언트 코드라고 자주 언급해주시는데, 사용자와 관련되어 일하는 코드를 전반적으로 일컫는 말일까요 ???
- 미해결스프링 핵심 원리 - 기본편
DIP와 관련된 어노테이션
강의 : 스프링 핵심원리 - "관심사의 분리" 현재 스프링 안쓰고 자바로만 하고 계시니 강의에는 안맞을 수도 있는데 궁금해서 질문 드립니다 ...DIP지키려고 객체생성 안해주고 인터페이스들을 선언만 해주고, 생성자 주입으로 마침내 DIP를 지킬 수 있다 이렇게 이해를 했습니다.여기서 더 나아가서 생성자도 쓰기 귀찮으니 @RequiredArgsConstructor쓰면 아래 코드에서 생성자 부분 안쓰고도 원래 의도대로 DIP지킬 수 있는거죠???
- 미해결스프링 핵심 원리 - 기본편
질문있습니다.
[질문 내용]빈 생명주기 콜백에 대해 공부하면서 의문점이 드는게 이 라이프사이클을 활용하여 테스트를 짜는걸 일개학생이 혼자 프로젝트를 진행할때 쓸 데가 있을까요?만약 있다면 언제 사용하면 좋을까요?
- 미해결스프링 핵심 원리 - 기본편
빈의 초기화가 무엇을 의미하나요?
현재까지 배운 내용으로 스프링 컨테이너가 빈의 생성+의존관계 주입을 해주는것은 이해가 가지만 초기화를 해준다는게 정확히 어떤 개념인지 이해가지 않습니다 앞선 강의에서 나왔던 @PostConstruct 어노테이션이 붙은 메소드를 초기화라고 생각하면 될까요?
- 미해결스프링 핵심 원리 - 기본편
포트번호가 생성이안되요
CoreApllication 클래스를 실행시키면 교수님처럼 localgost 8080이 출력이되고 웹사이트에서 url쳤을떄 화면이 띄워져야하는데 저는 연결조차안되네요
- 미해결스프링 핵심 원리 - 기본편
memberRepository에 lombok getter적용이 안됩니다
안녕하세요 강의 복습 도중 OrderServiceImpl에 getMemberReposiotry 메소드가 있어서 @Getter를 붙였는데 테스트 시에 cannot find symbol error가 뜹니다 IDE에서는 빨간줄도 안뜨는데 오류가 나는 이유가 무엇일까요?
- 해결됨스프링 핵심 원리 - 기본편
applicationContext를 통한 빈 객체 가져오기
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]이렇게 findByName() 메소드 내부에서는 ac.getBean()이 작동되는데, 외부에서는 compile-time error가 발생합니다. 왜 그렇나요?
- 미해결스프링 핵심 원리 - 기본편
컨테이너에 등록된 모든 빈 조회 ac.getBean
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]스프링 핵심 원리 - 기본편에서 컨테이너에 등록된 모든 빈 조회 2:07 에서 질문이 있습니다. Object bean = ac.getBean(BeanDefinitionName)에서 타입을 지정해주지 않았기 때문에 Object로 받았다고 말씀하셨는데요!for(String beanDefinitionName : beanDefinitionNames){} => 해당 반복문에서 beanDefinitionNames 배열들을 beanDefinitionName String 타입으로 받은 것 아닌가요? 이 부분이 궁금합니다!
- 해결됨스프링 핵심 원리 - 기본편
OrderServiceImpl은 DIP도 잘 지킨 코드인가요 ??
OrderServiceImpl은 DIP도 잘 지킨 코드인가요 ?? Order와 할인정책 사이 관계를 볼 때, 단일책임 원칙은 할인 정책이 discount하는 일 1개만 하고 있으니 지켰다고 보는데 DIP도 지킨 코드인가요 ?? 할인정책 관련 코드가 OrderServiceImpl부분에 아예 없는게 잘 지키는 거라고 생각했는데 아닌가요 ???
- 미해결스프링 핵심 원리 - 기본편
<섹션 7. 조회한 빈이 모두 필요할 때> 강의 질문
DiscountService 클래스에서 모든 Map으로 DiscountPolicy를 주입(@Autowired 생략) 받는다고 했는데 그렇다면 클래스에 @ComponentScan을 붙여서 등록된 빈들을 조회할 수 있도록 해야 하는 거 아닌가요?? 조금 헷갈리네요... ㅎㅎ
- 미해결스프링 핵심 원리 - 기본편
appConfig.xml
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.appConfig.xml 만들고 나서 에러가 뜨는데 어떻게 코드수정을 해줘야 할지 몰라 문의드립니다