inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

강의 관련 질문

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 강의를 들으며 헷갈리는 부분 질문 남깁니다. 회원을 가입하고 조회할 수 있다. 회원은 일반과 VIP 두 가지 등급이 있다. 회원 데이터는 자체 DB를 구축할 수 있고, 외부 시스템과 연동할 수 있다. (미확정) 먼저 회원은 가입하고 조회할 수 있는 기능이 있고 이를 역할과 구현으로 구분하기 위해 역할인 MemberService와 구현인 MemberServiceImpl을 생성했다고 이해했습니다. 그 다음부터 헷갈리기 시작하는데요. 여기서부터 질문입니다. MemberRepository 라는 interface를 생성했는데. 일단 저는 Repository를 현업에서 거의 사용한 적이 없어서 명칭부터가 익숙치 않았는데요. 제가 이해하기로는 주로 외부와의(DB) 통신을 담당하는 친구로 DAO와 유사한 역할을 하는 것으로 이해했습니다. 맞나요? 다만, 자체 DB를 구축할지 외부시스템과 연동할지 정해지지 않았기 때문에 Interface로 생성한거고, 만약 정해져 있다면 굳이 Interface로 생성하지 않아도 될 것 같은데 맞나요? 제가 현업에서 일하면서 Service와 DAO를 연결할때는 보통 같은 기능명칭을 사용했는데 여기서는 join을 save로, findMember를 findById로 사용하더라구요. 명칭을 다르게 하는 이유가있나요?

  • spring
  • 객체지향
godmercury 댓글 1 좋아요 0 조회수 389

컴포넌트 이름을 같게 해도 에러가 뜨지 않아요 ㅠ (자동)

미해결

스프링 핵심 원리 - 기본편

MemberServiceImpl, OrderServiceImpl 이름을 둘다 service로 이름을 설정했는데 AutoAppConfigTest 에서 돌려봐도 테스트가 통과하고 에러가 뜨질 않네요 왜 이럴까요? 영한님 강의 너무 잘 듣고 있습니다 좋은 강의 찍어주셔서 감사합니다!

  • spring
  • 객체지향
oilater 댓글 2 좋아요 0 조회수 608

synchronized 과정

해결됨

자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 2(마스터편)

public synchronized String lendBook() throws InterruptedException{ while (bookList.size() == 0) { wait(); } String book = bookList.remove(0); System.out.println(Thread.currentThread() + " 학생이 책을 빌렸습니다."); return book; } 위 코드의 경우 synchronized method 로 처리하였습니다. 이 경우 shared resource(예제의 경우 this 객체)에 접근하는 3개의 thread에 대해서도 하나의 쓰레드가 차지한 경우 lock을 걸고 사용이 끝나면 다음 쓰레드가 사용하는 과정을 거치나요? (이러한 과정이 굉장히 빨라서 동시에 일어나는 것 처럼 보일 뿐)

  • java
  • 객체지향
  • 알고리즘
잇택잇 댓글 1 좋아요 0 조회수 225

@Autowired 필드 명, @Qualifier, @Primary 강의에서 오류가 저는 BeanDefinitionTest에서 납니다ㅠ

해결됨

스프링 핵심 원리 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 선생님 저는 BasicScan 테스트가 아니라 엉뚱한 곳에서 오류가 납니다 ㅠ org.springframework.beans.factory. UnsatisfiedDependencyException: Error creating bean with name 'orderService' defined in class path resource [appConfig.xml]: Unsatisfied dependency expressed through constructor parameter 1: Ambiguous argument values for parameter of type [hello.core.discoun t.DiscountPolicy] - did you specify the correct bean references as arguments? 빈이 2개 일 경우 첫번째 방법으로 @Autowired 생성자에서 파라미터명을 rateDiscountPolicy로 바꾸는 방법을 따라했는데 왜 저런 오류가 날까요? AppConfig.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="memberService" class="hello.core.member.MemberServiceImpl"> <constructor-arg name="memberRepository" ref="memberRepository" /> </bean> <bean id="memberRepository" class="hello.core.member.MemoryMemberRepository" /> <bean id="orderService" class="hello.core.order.OrderServiceImpl"> <constructor-arg name="memberRepository" ref="memberRepository" /> <constructor-arg name="discountPolicy" ref="discountPolicy" /> </bean> <bean id="discountPolicy" class="hello.core.discount.RateDiscountPolicy" /> </beans> OrderServiceImpl package hello.core.order; import hello.core.discount.DiscountPolicy; import hello.core.discount.FixDiscountPolicy; import hello.core.discount.RateDiscountPolicy; import hello.core.member.Member; import hello.core.member.MemberRepository; import hello.core.member.MemoryMemberRepository; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component //@RequiredArgsConstructor 롬복 public class OrderServiceImpl implements OrderService{ private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy rateDiscountPolicy) { this.memberRepository = memberRepository; this.discountPolicy = rateDiscountPolicy; } @Override public Order createOrder(Long memberId, String itemName, int itemPrice) { Member member = memberRepository.findById(memberId); int discountPrice = discountPolicy.discount(member, itemPrice); return new Order(memberId,itemName,itemPrice,discountPrice); // 최종 생성된 주문을 반환 } //테스트용 public MemberRepository getMemberRepository(){ return memberRepository; } } BeanDefinitionTest package hello.core.beandefinition; import hello.core.AppConfig; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.GenericXmlApplicationContext; public class BeanDefinitionTest { //AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class); GenericXmlApplicationContext ac = new GenericXmlApplicationContext("appConfig.xml"); @Test @DisplayName("Bean 설정 메타정보 확인") void findApplicationBean(){ String[] beanDefinitionNames = ac.getBeanDefinitionNames(); for (String beanDefinitionName : beanDefinitionNames) { BeanDefinition beanDefinition = ac.getBeanDefinition(beanDefinitionName); if(beanDefinition.getRole() == BeanDefinition.ROLE_APPLICATION){ System.out.println("beanDefinitionName = " + beanDefinitionName + "beanDefinition = " + beanDefinition); } } } } package hello.core.xml; import hello.core.member.MemberService; import org.junit.jupiter.api.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.GenericXmlApplicationContext; import static org.assertj.core.api.Assertions.assertThat; public class XmlAppContext { @Test void xmlAppContext(){ ApplicationContext ac = new GenericXmlApplicationContext("appConfig.xml"); MemberService memberService = ac.getBean("memberService", MemberService.class); assertThat(memberService).isInstanceOf(MemberService.class); } }

  • spring
  • 객체지향
가진빵다내놔 댓글 2 좋아요 0 조회수 718

MemberRepository의 주소값이 똑같은이유가 싱글톤 때문인가요?

미해결

스프링 핵심 원리 - 기본편

안녕하세요 강의 잘 듣고있습니다 다름이아니라 memberRepository1(), memberRepository2() 둘의 메서드의 value값의 주소가 사진처럼 똑같은데요 이게 싱글톤이라서 주소를 공유하기때문에 주소값이 똑같은건가요?

  • spring
  • 객체지향
자바마스터하자 댓글 2 좋아요 0 조회수 582

@Component로 자동 빈 등록시 생성자가 2개인 경우 생성자를 선택하여 Bean을 생성할 수 있나요?

미해결

스프링 핵심 원리 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 강의 내용중 궁금증이 있어 질문 올립니다. 만약 @Component로 자동 빈 등록시 빈으로 등록될 class에 생성자가 2개인 경우 생성자를 선택하여 Bean을 생성할 수 있나요? 예를 들면 아래와 같습니다. @Component public class MemberServiceImpl implements MemberService { private final MemberRepository memberRepository; @Autowired public MemberServiceImpl(MemberRepository memberRepository) { this.memberRepository = memberRepository; } /* MemberRepository 객체를 인자로 2개 받는 생성자를 호출 가능한지? */ @Autowired public MemberServiceImpl(MemberRepository memberRepository1, MemberRepository memberRepository2) { this.memberRepository = memberRepository; } } getBean 으로 빈 조회를 할때 MemberServiceImpl memberService = ac.getBean("memberService", MemberServiceImpl.class); MemberServiceImpl 클래스의 두번째 생성자(인자값 두개)를 호출하여 생성하는 방법이 있나요? @Bean 메서드를 만들어서 강제로 new MemberServiceImpl(MemberRepository memberRepository1, MemberRepository memberRepository2); 위 방식으로 하면 될것 같은데 혹시 @Bean을 사용하지 않고 생성하는 다른 방법이 있을까요?

  • spring
  • 객체지향
  • component
댓글 1 좋아요 0 조회수 658

@RequiredArgsConstructor 과 @Qualifier은 동시 사용이 되지 않는 건가요?

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 강의를 수강하다가 궁금한 것이 있어 질문드립니다. 이전 롬복 강의에 이어 @Qualifier 사용 코딩하니 롬복과 @Qualifier 이 동시에 되지 않는 것으로 판단됩니다. 같이 사용할 수 있는 방법은 없는 것인가요? @Qualifier 사용을 위해서는 @AutoWired로 생성자 주입을 해야하는 것인가요? 실무에서는 어떻게 하시는지 궁금합니다.

  • spring
  • 객체지향
  • lombok
Choi근욱 댓글 1 좋아요 0 조회수 401

MyFileWriter 클래스 선언 질문

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

처음에 MyFileWriter 클래스를 null 로 선언하고 Try 문안에서 new 키워드를 사용한 이유는 무엇인지 궁금합니다 !! public static void main(String[] args){ MyFileWriter writer = new MyFileWriter(); try{ writer.write("아이스크림이 먹고 싶어요"); }catch (Exception e){ e.printStackTrace(); }finally { try { writer.close(); } catch (Exception e) { throw new RuntimeException(e); } } 이런식으로 사용하는 것과 무슨 차이가 있는지 궁금합니다 !

  • java
  • 객체지향
최재영 댓글 3 좋아요 0 조회수 325

웹스코프와 프로토타입스코프의 차이점

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 둘 다 요청 후에는 삭제되는 거 같은데 차이점을 모르겠습니다.

  • spring
  • 객체지향
댓글 2 좋아요 0 조회수 437

Test 코드 작성 시에는 왜 import 문이 없나요?

해결됨

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의 잘 보고 있습니다. 문득 코딩하다 궁금한 점이 컨트롤러, 서비스, 레포지토리 등을 작성할 땐 import 문을 사용하여 클래스를 사용하는데 TEST 코드를 작성할 땐 왜 import 문을 작성하지 않아도 클래스를 사용할 수 있는 건가요?

  • spring
  • 객체지향
nick 댓글 1 좋아요 0 조회수 489

퀴즈 2번 질문입니다!

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요? 퀴즈 2번 질문이 있습니다. 2분 31초부터 "삼항연산자를 이용해서 결과값을 String 변수에 저장해놓는다."라고 하셨는데 왜 String이 쓰이는지 궁금합니다!

  • java
  • 객체지향
Rene02 댓글 1 좋아요 0 조회수 221

입력

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

강의 5분 2초에 int height = sc.next (); 이렇게 했을 때 오류가 생겨서 "문자열"로 입력 받은 값을 "정수"로 바꿔주어야 한다고 설명해주셨는데 키는 숫자인데 왜 문자열로 입력 받는다고 설명해주셨는지 궁금합니다!

  • java
  • 객체지향
Rene02 댓글 1 좋아요 0 조회수 262

빈 스코프 강의에서

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 빈 스코프 강의에서 singtonbean.class를 통해 스프링 컨테이너를 만들었는데 이 방식으로 스프링 컨테이너를 만들면 singtonbean 클래스 객체가 만들어져 스프링 컨테이너에 저장되는 건가요? 그리고 이 방식으로 스프링 컨테이너를 생성하면 해당 클래스는 componentscan의 대상이 된다고 하셨는데 해당 클래스에 componentscan 애노테이션이 있는 것이랑 똑같다고 봐도 무방한가요?

  • spring
  • 객체지향
문지수 댓글 1 좋아요 0 조회수 352

형 변환 질문입니다!

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

숫자를 문자열로 바꿀 때 String.valueOf 를 사용하는 것과 Integer를 사용하는 것 2개를 알려주셨는데 String.valueOf를 사용하여 출력했을 때는 잘 출력이 되었습니다. Integer를 사용할 때도 아래 사진처럼 사용하면 안 되고 위에 String s1 = String.valueOf(93);을 함께 작성해야 하는 건가요?

  • java
  • 객체지향
Rene02 댓글 1 좋아요 0 조회수 254

래퍼 객체 Long 타입을 쓰는 이유가 궁금합니다.

해결됨

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. member 도메인을 만들 때 왜 기본형 long 이 아닌 Long 래퍼 객체 타입을 사용하는지 궁금합니다. 감사합니다.

  • spring
  • 객체지향
nick 댓글 1 좋아요 0 조회수 405

왜 자식클래스의 메서드가 메인에서 실행될까요?

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

다형성을 배울때, 변수의 자료형이 부모클래스라면 자식클래스에만 존재하는 메서드는 바로 사용이 되지않아 자식클래스로 형변환 해준뒤 사용한다고 했던거같습니다. 하지만 이번 예제에서, 분명 hamburgers array의 자료형은 Hamburger,즉 부모클래스의 자료형인데, 어째서 루프 안에서 hamburger.cook()이 실행될때마다 오버라이딩된 자식클래스 속의 cook메서드가 실행되는거에요?

  • java
  • 객체지향
Zn아쿠 댓글 2 좋아요 0 조회수 347

구현에 관한 질문

미해결

스프링 핵심 원리 - 기본편

DiscountPolicy와 같은 인터페이스들을 fixdiscount, ratediscount 등 클래스가 상속을 받고 main에서 클래스를 사용할때 부모클래스로 구현을 하잔아요 예를 들어 영상에서 코드를 보면 DiscountPolicy discountpolicy = new RateDiscountPolicy 의 형식처럼 구현되는데 만약에 자손 클래스에 새로 메서드를 추가를 했는데 그 메서드를 부모가 가지지 않았다면 그 메서드를 다운캐스팅을 통해 쓰는 건가요?? 아니면 메서드를 부모 인터페이스에도 적어주어 오버라이딩으로 활용하는 것이 좋나요? 수업에서 계속 다형성을 활용해 진행하기 때문에 이런 궁금점이생겼습니다.

  • spring
  • 객체지향
문지수 댓글 3 좋아요 0 조회수 329

Map<String, DiscountPolicy> beansOfType = ac.getBeansOfType(RateDiscountPolicy.class);

해결됨

스프링 핵심 원리 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] Map<String, DiscountPolicy> beansOfType = ac.getBeansOfType(DiscountPolicy.class); 이 부분에서 DiscountPolicy.class를 RateDiscountPolicy.class로 바꿔 보면 Map<String, DiscountPolicy> beansOfType = ac.getBeansOfType(RateDiscountPolicy.class); 오류가 나는데 이유가 뭔가요? RateDiscountPolicy는 DiscountPolicy의 구현체니까 DiscountPolicy 타입에 대입될 수 있으니 당연히 상관없을 줄 알았는데 오류가 나는 것 같더라고요.. 아래는 제가 IDE에서 따로 작성해 본 코드인데 RemoteControl rc = new SmartTelevision(); Map<Integer, RemoteControl> temp = new HashMap<>(); temp.put(1, rc); 여기서 SmartTelevision이 RemoteControl의 구현체인데 Map 객체에 저장이 되더라고요. 그래서 위의 스프링에서의 RateDiscountPolicy의 경우도 문제 없을 줄 알았는데.. 안 되는 이유가 뭘까요..

  • spring
  • 객체지향
11 1 댓글 1 좋아요 0 조회수 378

특정 하위 타입으로 조회할 때 궁금한 점 있습니다.

해결됨

스프링 핵심 원리 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 아래 코드의 findBeanBySubType()에서 RateDiscountPolicy bean = ac.getBean(RateDiscountPolicy.class); 이 부분을 보면 RateDiscountPolicy 타입으로 조회한다는 뜻인데 TestConfig를 보면 rateDiscountPolicy는 리턴할 때 RateDiscountPolicy를 리턴하지만 메서드 시그니처에 있는 리턴 타입 자체는 DiscountPolicy이잖아요? RateDiscountPolicy bean = ac.getBean(RateDiscountPolicy.class);를 실행한 이후 동작 과정이 궁금합니다. DiscountPolicy 타입인 빈들을 먼저 찾고 그것들이 여러 개일 때 RateDiscountPolicy를 찾는지, 아니면 바로 처음부터 RateDiscountPolicy인지 FixDiscountPolicy인지 구분할 수 있는지 궁금합니다. @Test @DisplayName("특정 하위 타입으로 조회") public void findBeanBySubType() { RateDiscountPolicy bean = ac.getBean(RateDiscountPolicy.class); assertThat(bean).isInstanceOf(RateDiscountPolicy.class); } @Configuration static class TestConfig { @Bean public DiscountPolicy rateDiscountPolicy() { return new RateDiscountPolicy(); } @Bean public DiscountPolicy FixDiscountPolicy() { return new FixDiscountPolicy(); } } }

  • spring
  • 객체지향
11 1 댓글 2 좋아요 0 조회수 371

상대경로 관련 질문드립니다

해결됨

나도코딩의 자바 기본편 - 풀코스 (20시간)

안녕하세요! 퀴즈를 풀다가 상대 경로에 대해 궁금한 점이 생겨 질문드립니다. 강의에서 saying.txt 파일과 Quiz _13 파일이 chap_13에 속한 상황으로 나옵니다. 여기서 저는 상대 경로는 현재 디렉토리를 기준으로 목표로 하는 파일의 위치를 작성하는 것이라고 이해하여 FileReader의 파라미터로 "saying.txt"라고 작성하였습니다. 그런데 강의를 본 후 src폴더의 경로부터 작성해야 함을 알게 되었습니다. ("src/chap_13/saying.txt") 분명 saying.txt 파일과 Quiz _13 파일이 같은 chap_13 폴더에 있는데 왜 상위 폴더인 src 폴더의 경로부터 작성하는건가요?

  • java
  • 객체지향
yjlee 댓글 1 좋아요 0 조회수 296

인기 태그

인프런 TOP Writers

주간 인기글