묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
메인 메소드의 전달인자로는 String[] args 만 사용하는 이유가 뭔가요?
main 메소드는 public void main(String[] args) {처럼 괄호 안에 String[] args만 사용해야 하나요?String 말고 Int 나 Double 등 다른 자료형을 사용하면 무슨 문제가 있나요?
-
미해결스프링 핵심 원리 - 기본편
프로젝트 오픈방법 질문
프로젝트 오픈시, build.gradle을 선택해서 여시는데 그러는 이유가 있는건가요?그냥 core폴더를 선택해서 여는 것이랑 차이가 있는건가요?
-
미해결김영한의 실전 자바 - 기본편
instanceof 강의를 들으며 궁금한 점이 있습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]강의에서 Parent parent를 안전하게 다운캐스팅하기 위하여if (parent instanceof Child)를 사용하여서parent가 new Child()가 맞는지 확인하는 것으로 이해했습니다. 그 후 강의 중에 "참고로 instanceof 키워드는 오른쪽 대상의 자식 타입을 왼쪽에서 참조하는 경우에도 true 를 반환한다" 라고 하며 parent instanceof Parent 를 예시로 보여주었습니다. 그런데 강의 중 예시를 보았을 때 안전한 다운캐스팅을 위해선 parent instanceof Child를 사용해야 하는것으로 이해하였는데, 혹시라도 parent instanceof Parent가 특별히 사용되져야하는 다른 예시가 있을까요? 글의 요지는 그냥 이런 방식도 가능하다라는 의도로 "참고로 instanceof 키워드는 오른쪽 대상의 자식 타입을 왼쪽에서 참조하는 경우에도 true 를 반환한다"라는 내용을 설명해주신건지아니면 실제 코드를 구성할 때 따로 필요한 용도가 있는지 궁금한 것 입니다.
-
해결됨스프링 핵심 원리 - 기본편
[섹션 6] @Autowired 와 컨테이너 생성 순서
안녕하세요.섹션6에서 @Autowired에 대해서 공부하다가 잘 이해가 되지 않는 부분이 있어서 질문드립니다. 컨테이너는,스프링 컨테이너 생성스프링 컨테이너 내부의 빈 저장소에 빈 이름과 객체 등록설정 정보를 기반으로 빈 간의 의존관계 설정의 과정으로 생성된다고 [섹션 4]에서 학습하였습니다.이 과정에서 이해가 잘 되지 않는 것이 있습니다.@Component public class MemberServiceImpl implements MemberService { private final MemberRepository memberRepository; @Autowired public MemberServiceImpl(MemberRepository memberRepository) { this.memberRepository = memberRepository; } } 빈 저장소에 빈 이름(memberServiceImpl)과 빈 객체를 등록하려면, 생성자를 호출해야 하지 않나요??생성자를 호출하려면 MemberRepository 타입의 빈을 찾아서 의존관계 주입을 해줘야 하는데, 이러면 컨테이너 생성 과정의 [2], [3]번이 동시에 실행되는 것이 아닌지 궁금합니다. memberServiceImpl 빈 등록-> 생성자 호출 필요-> 매개 변수 MemberRepository memberRepository 전달 필요-> memberRepository 빈을 전달함(의존 관계 주입) [순서 3]-> 객체 생성 완료 [순서 2] 제가 이해한 빈 등록 과정입니다.결국, 의존관계 주입과 빈 객체 등록은 동시에 이루어지는 것이 아닌지 궁금합니다.잘못된 부분이 있는지 알려주세요! 감사합니다.
-
미해결스프링 핵심 원리 - 기본편
스프링 메인 메서드 실행 오류
스프링 부트 메인 메서드 실행 시 해당 오류가 뜨는데어디 쪽을 확인해 봐야 할까요?... MemberServiceImpl, MemberRepository, MemoryMemberRepository에는 잘 못 된 부분이 없는 것 같아서요...
-
미해결스프링 핵심 원리 - 기본편
선생님 혹시 실전! 스프링 부트 이건 언제 출시 예정인가요?
선생님 혹시 실전! 스프링 부트 이건 언제 출시 예정인가요?올해 예정일까욤?
-
해결됨스프링 핵심 원리 - 기본편
No Scope registered for scope name 'request'
마지막 강의까지 다 라이브코딩 한 후 전체 테스트를 돌려봤는데 에러가 발생하네요.@Component @Scope(value="request", proxyMode = ScopedProxyMode.TARGET_CLASS) public class MyLogger {오타도 없는데 뭐가 문제일까요?
-
미해결스프링 핵심 원리 - 기본편
basicScan 실행 시, NoUniqueBeanDefinitionException 발생
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]영한쌤 따라서 @Autowired 필드명 방법을 사용했더니 다음과 같은 에러가 발생했습니다. org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'orderServiceImpl' defined in file [C:\Program Files\core\core\out\production\classes\hello\core\order\OrderServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 1: No qualifying bean of type 'hello.core.discount.DiscountPolicy' available: expected single matching bean but found 2: fixDiscountPolicy,rateDiscountPolicy at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:798) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1191) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:561) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:975) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:959) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624) at org.springframework.context.annotation.AnnotationConfigApplicationContext.<init>(AnnotationConfigApplicationContext.java:93) at hello.core.scan.AutoAppConfigTest.basicScan(AutoAppConfigTest.java:14) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)Caused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.core.discount.DiscountPolicy' available: expected single matching bean but found 2: fixDiscountPolicy,rateDiscountPolicy at org.springframework.beans.factory.config.DependencyDescriptor.resolveNotUnique(DependencyDescriptor.java:218) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1420) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:907) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:785) ... 17 more아래는 제 코드입니다.에러 내용으로만 봐서는 rateDiscountPolicy와 fixDiscountPolicy 때문에 빈이 2개 등록된다는 것 같은데.. @Autowired 필드명 방법이 그러한 문제를 해결하려는 건데 왜 에러가 날까요ㅠㅠ
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
수업 교재 어디서 구하나요?
동영상만 보니 클래스 이후부터는 혼란스럽네요. 교재를 어디서 구하거나 프린트할 수 있을지요?
-
해결됨스프링 핵심 원리 - 기본편
강의에서 21:36 쯤에
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]영한쌤께서 fieldInjectionTest 테스트 코드를 만드실 때, new OrderServiceImpl() 로 OrderServiceimpl 객체를 생성하잖아요? 여기서 해당 객체는 스프링 빈으로 등록된 OrderServiceImpl이 아닌 그냥 완전히 새로 생성된 자바 객체인 OrderServiceImpl 인거죠??
-
미해결스프링 핵심 원리 - 기본편
3분 30초 경 오류 해결 부분
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 오류 로그 Failed to load ApplicationContext for [MergedContextConfiguration@65ae095c testClass = hello.core.CoreApplicationTests, locations = [], classes = [hello.core.CoreApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@1f, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizer@4ef37659, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@306cf3ea, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@52102734, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@4d910fd6, org.springframework.boot.test.context.SpringBootTestAnnotation@930cd593], contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null]강의의 3분 30초 경 오류 코드를 수정하는 순서에서의 AutoAppConfig클래스의 3줄을 주석처리 하는 부분을 처리 하였는데도 오류가 떠서 GPT에 검색을 해보니까 주석 처리를 했는데도 memoryMemberRepository Bean이 두개가 등록이 되어있다고 나옵니다.AutoAppCofig 코드package hello.core; import hello.core.member.MemberRepository; import hello.core.member.MemoryMemberRepository; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; @Configuration @ComponentScan( excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class) ) public class AutoAppConfig { // @Bean("memoryMemberRepository") // MemberRepository memberRepository() { // return new MemoryMemberRepository(); // } } MemberServiceImpl 코드package hello.core.member; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Component; @Component public class MemberServiceImpl implements MemberService{ private final MemberRepository memberRepository; @Autowired // ac.getBean(MemberRepository.class) public MemberServiceImpl(MemberRepository memberRepository) { this.memberRepository = memberRepository; } @Override public void join(Member member) { memberRepository.save(member); } @Override public Member findMember(Long memberId) { return memberRepository.findById(memberId); } //테스트 용도 public MemberRepository getMemberRepository() { return memberRepository; } }MemberService 코드package hello.core.member; public interface MemberService { void join(Member member); Member findMember(Long memberId); } MemoryMemberRepository 코드package hello.core.member; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; import java.util.HashMap; import java.util.Map; @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); } }
-
미해결스프링 핵심 원리 - 기본편
강의 3분 50초 classes=Configuration.class에 대한 질문 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]해당 강의 3분 45~50초 경, 영한쌤께서 Configuration 어노테이션이 붙어있는 클래스를 제외시키기 위해 classes=Configuration.class 이러한 코드를 Filter에 적용하신 것을 확인했습니다. 그런데 AutoAppConfig 클래스도 @Configuration이 적용되어 있는 클래스가 아닌가요?? 해당 클래스는 어떤 과정으로 인해서 제외되지 않는지 궁금합니다! 감사합니다:-)
-
해결됨김영한의 실전 자바 - 기본편
패키지 활용
패키지가 나눠서 안만들어 지는데 어떻게 해야하나요???윈도우 컴퓨터 쓰고있습니다!!
-
미해결김영한의 실전 자바 - 기본편
자바 다음 강의
자바 다음 강의는 언제 나올까요?
-
미해결스프링 핵심 원리 - 기본편
저는 콘솔창이 왜 이렇게 뜰까요ㅠㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이전부터 이랬는데 별 다른 문제 없이 강의를 들을 수 있어서 그냥 냅뒀습니다. 그런데 점점 이유가 궁금해지더군요ㅠㅠ 13:37 쯤 영한쌤은 테스트가 완료된 뒤 콘솔 출력창에 로그가 쭉 뜨는데, 저는 테스트가 완료되어도 빈 화면으로만 뜨네요..
-
해결됨김영한의 실전 자바 - 기본편
Local vaeriable initialization
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]여기에 질문 내용을 남겨주세요.사용 운영체제: M1 MacJava version: openjdk 17---문제: 상품 주문 시스템 개발 - 리팩토링 부분을 풀다가 약간 저의 개념이 애매모호한거 같아 질문드립니다.여기서 32번째 줄에 대한 내용입니다.local variable을 +=연산자를 적용하려면 꼭 초기화를 해야되는지에 대한 겁니다. 기본적으로 primitive type의 int형은 0으로 자동 초기화가 됩니다. 그런데 local 범위에서 compile error가 납니다. 그 이유가 더 밖의 범위에서 totalAmount가 초기화가 되거나 할 때 버그가 생길 수 있기 때문에 compile에러가 일부러 나게끔 설정한건가요??
-
해결됨스프링 핵심 원리 - 기본편
Nullpoint exception 문제 발생
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]옵션처리 강의까지 강의를 잘 따라 가다가 모든 테스트 파일의 코드들을 실행시켰을때 2가지 오류가 납니다. 첫번째는 다음과 같은 nullpointexception이 뜹니다.두번째는 BeanNotOfRequiredTypeException오류가 발생합니다.어디를 어떻게 고치면 좋을까요?
-
해결됨자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 2(마스터편)
socket 질문드립니다
1. 그림에서 빨간색 부분은 무슨 기능을 하는 건가요? 출력에도 영향이 없는 거 같아서 질문드립니다 그림에서 파란색부분에서 클라이언트가 wirte 할 때까지 대기하고 있는 건가요? 클라이언트 역시 readline을 만나면 서버가 write할 때까지 대기하는 건가요?
-
미해결스프링 핵심 원리 - 기본편
문서 오타네요 disConnect -> disconnect
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
미해결김영한의 실전 자바 - 기본편
intellij package import 문제입니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요?예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요?예3. 질문 잘하기 메뉴얼을 읽어보셨나요?예[질문 내용]안녕하세요. 섹션6 접근 제어자 사용 - 필드, 메서드 파트 청강 중 AccessOuterMain 클래스를 생성하여 AccessData 클래스를 import할 때 문제가 생겼습니다. 현재 저는 windows 환경에서 intellij community Edition 2023.1.2 버전을 사용중입니다. 디렉토리 구조는 다음과 같습니다. > src > access > a - AccessData - AccessInnerMain > b - AccessOuterMain - Speaker - SpeakerMain 다음은 access.a.AccessData 의 코드 내용입니다.package access.a; public class AccessData { public int publicField; int defaultField; private int privateField; public void publicMethod() { System.out.println("publicMethod 호출: " + publicField); } void defaultMethod() { System.out.println("defaultMethod 호출: " + defaultField); } private void privateMethod() { System.out.println("privateMethod 호출: " + privateField); } public void innerAccess() { System.out.println("내부 호출"); publicField = 100; defaultField = 200; privateField = 300; publicMethod(); defaultMethod(); privateMethod(); } } 다음은 access.b.AccessOuterMain 의 코드 내용입니다.package access.b; public class AccessOuterMain { public static void main(String[] args) { AccessData data = new AccessData(); // 해당 부분에서 AccessData가 code suggestions도 안나오고 직접 import를 해도 import를 할 수 없습니다. } } access.b.AccessOuterMain 의 코드에서 AccessData 가 import가 되지 않습니다. intellij에서 code suggestion도 안되고(다른 코드는 code suggestion 잘 됩니다.) 직접 import를 해도 AccessData에 빨간불이 들어옵니다. 왜 그럴까요?