묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 핵심 원리 - 기본편
스프링 컨테이너
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 강의를 복습하면서 궁금증이 생겨서 질문을 남기게 되었습니다.제가 강의를 1회 완주 후, 혼자서 입문편과 이번편에서 배운 것들을 활용하여 뭔가를 만들면서 느낀 것입니다.애플리케이션이 실행되면 @ComponentScan이 @Configuration, @Component와 관련된 것들을 스캔해서 스프링 컨테이너에 등록 하잖아요? 여기서 궁금한 건@SpringBootApplication이 @ComponentScan도 포함하고 있어서 굳이 AutoAppConfig과 같은 클래스를 만들고 ApplicationContext 객체를 생성하는 작업이 실제론 필요하지 않은 작업 맞을까요??
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
엉뚱한 코드 실행 될때
초보적이 실수 같은데 오랜기간 해결법을 몰라 질문드립니다. 상황1: 코드A 와 코드B를 같은 폴더에 작성합니다. 코드B에는 에러가 있습니다. 코드 A 를 실행 (ctrl+shift+F10) 시키면 코드B에 에러가 있다고 메세지를 보냅니다.상황2: 코드A는 패키지A에 있고 같은 레벨에 패키지B가 있고 에러가 있는 코드B가 있습니다. 코드A를 실행 시키면 다른 패키지에 있는 코드B에 에러가 있다고 메세지를 보냅니다.분명한것은 A 와 B 사이에는 아무 연관성이 없습니다. 아무 파일로 실행키켜 보시면 같은 상황이 연출 될것입니다.왜그럴까요? 가끔씩 정말 귀찮게 하는 에러인데 파일을 코치거나 지우는 방법외에는 아직 해결책을 찾지 못했습니다. 도와주세요^^
-
미해결스프링 핵심 원리 - 기본편
find Member 의 값이 null값으로 나옵니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]분명 코드는 똑같이 한거 같은데 왜이런 오류가 나오는건가요??
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
맥북에서 jdk를 다운받으려고 하는데 command not found: brew
이렇게 뜨는데 해결 방법을 알려주시면 감사하겠습니다
-
해결됨자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
뒤에를 안봤는데 등급이 올라가거나 내려가면 어떻게 되나요?
기존 vip객체를 지우고 새로운 customer객체에 담나요?그건 생각하지 않는걸로 하나요
-
미해결Java TPC (생각하고, 표현하고, 코딩하고)
안녕하세요
안녕하세요 박매일님. 아직 진행중 이지만 강의 너무 잘 보고 있습니다. 다름이 아니라 목차인 part1과 part2로 나누어져 있는데 나누신 기준이 궁금해서 질문드립니다!
-
미해결PHP 7+ 프로그래밍: 객체지향
라라벨(php) 배포 문의
라라벨로 backend 개발을 시작하고 있는 초보 개발자 입니다배포시 여러방법이 있겠지만 (Laravel Envoyer,Laravel Forge 등이 있지만) 이것을 사용하지 않고 무료로 개인서버(서버호스팅)배포를 고민하고 있습니다배포할 서버 : centos 7개발 : 라라벨 8강사님께서 작성한 "카페24 호스팅에 라라벨 프로젝트 배포하기" 문서도 보았습니다잘 이해가 안됩었습니다추가적으로 개인서버(production)에서 아파치 웹서버 사용시 설정을 어떻케 하면 되는지도 궁금합니다수고하세요
-
해결됨스프링 핵심 원리 - 기본편
프록시, @PostConstruct
프록시 객체가 생성될 때 myLogger를 토대로 생성되서 DI까지 이뤄진다고 생각했습니다.DI가 이뤄진다는 것은 프록식 객체도 빈에 등록되는 것인데 왜 @PostConstruct는 작동이 안되는지 궁금합니다.
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
참조자료형 변수 강의- class 자료형 선언 질문
public class Student { int studentID; String studentName; Subject korean; Subject math; public Student(int studentID, String studentName) { this.studentID=studentID; this.studentName=studentName; korean=new Subject(); math=new Subject(); } }위의 코드를 아래의 코드로 바꾸면 어떻게 다른거며 어떤 문제가 발생하나요?결과값은 똑같이 나오더라구요public class Student { int studentID; String studentName; Subject korean=new Subject(); Subject math=new Subject(); public Student(int studentID, String studentName) { this.studentID=studentID; this.studentName=studentName; } }
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
객체 생성부분과 new의 의미
안녕하세요 나도코딩 강사님강의를 듣다가 궁금한 부분이 있어서 질문드립니다챕터 7의 다형성파트 강의에서질문 1 : Camera camera = new Camera(); Camera factoryCam = new FactoryCam(); Camera speedCam = new SpeedCam();코드 첫번째 줄이 의미하는바가 Camera 클래스로부터 객체명이 camera인 객체를 생성한다는 것은 알겠는데등호(=) 뒤에 있는 new Camera() 이게 뭘 의미하는건지 잘 모르겠습니다코드에 (Alt + 클릭)을 하면 해당하는 코드부분으로 바로 이동하는데 Camera 클래스의Camera() 생성자로 가더라구요new Camera()가 Camera 클래스의 생성자를 의미하는건가요 ? 질문 2 :Camera factoryCam = new FactoryCam();이 코드는 Camera 클래스로부터 객체명이 factoryCam인 객체를 생성하게 되는데 자신의 클래스를 상속받는 FactoryCam 클래스의 메소드와 변수는 사용하지 못하고 Camera 클래스의 메소드만 사용할 수 있다고 하셨는데뒤에 new FactoryCam() 이 부분이 의미하는바가 무엇인가요? 질문 3 :if (camera instanceof Camera) { // camera 객체가 Camera 클래스로부터 만들어진 인스턴스이면 System.out.println("카메라입니다."); } if (factoryCam instanceof FactoryCam) { ((FactoryCam)factoryCam).detectFire();첫 번째 if 에서 camera 객체는 Camera 클래스로부터 만들어진 객체가 맞으니까"카메라입니다"를 출력하는 것은 이해되는데두번째 if 에서 factoryCam 객체는 부모클래스인 Camera 클래스로부터 생성된 객체인데왜 FactoryCam 클래스의 인스턴스인지도 이해가 안갑니다. 클래스로부터 생성된 객체를 인스턴스라고 알고 있었는데factoryCam 객체는 Camera 클래스로 부터 생성된 객체니까 Camera 클래스의 인스턴스로 이해 했는데두번째 if에서 (factoryCam instanceof FactoryCam) 이 true라고 해서 헷갈리네요 그리고 factoryCam이 FactoryCam의 객체가 맞다면 FactoryCam으로 형변환 하는 이유가 뭔가요 ?
-
미해결스프링 핵심 원리 - 기본편
@Autowired 오류는 나는데 테스트 성공해서 결과값이 나왔을때 어떻게해야되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]@Autowired 오류는 나는데 테스트 성공해서 결과값이 나왔을때 어떻게해야되나요?질문1. 오류는 나는데 테스트 성공해서 결과값이 나왔을때 어떻게해야되나요?다른사람 문제는같은데 그냥 highlight allProblems -> none 바꾸라고 하는데 그렇게 하고싶지 않고 원인을 알아야 나중에 같은 문제 생겨도 스스로 해결 하고싶어서요 구글에 찾아봐도 해결이 안되네요 빨간줄나는 오류 원인질문 2. @Autowired(required = true)을 했을때 멤버가 스프링빈을 찾을 수없다고 나오는데@Autowired(required = false)일때도 같은 오류가 나요 의존관계주입을 잘못 된건가요?
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
src 파일 사라짐
수시로 저장을 해도 intellij에서 src 파일이 자꾸 사라져서 실습하던 내용이 없어졌는데 왜 그러는걸까요?파일을 다시 복구하는 방법이 있을까요?
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
인터페이스 질문입니다
안녕하세요 나도코딩 강사님인터페이스 강의를 듣다가 이해가 안가는 부분이 많아서 질문드립니다챕터8의 02인터페이스 코드 부분에서 질문 1 :Detectable fireDetector = new FireDetector(); Detectable advancedFireDetector = new AdvancedFireDetector(); FactoryCam factoryCam = new FactoryCam(); factoryCam.setDetector(fireDetector); factoryCam.setReporter(normalReporter);코드 첫번째줄을 해석하면Detectable 이라는 인터페이스를 구현하는 FireDetector 클래스로부터 fireDetector 객체를 생성한 것이라고 이해하는게 맞는건가요?질문 2 :public class FactoryCam extends Camera implements Detectable, Reportable { private Detectable detector; private Reportable reporter; public void setDetector(Detectable detector) { this.detector = detector; } public void setReporter(Reportable reporter) { this.reporter = reporter;FactoryCam 클래스에서 인터페이스 변수들(Detectable, Reportable)을 선언해주고setter 메소드를 만들어서 매개변수로 Detectable 이라는 인터페이스 변수인 detector를 전달받게 했는데FactoryCam factoryCam = new FactoryCam(); factoryCam.setDetector(fireDetector); factoryCam.setReporter(normalReporter);메인 메소드에서 setDetector() 와 setReporter() 메소드의 전달값으로 왜 인터페이스 변수(Detectable, Reportable)를 전달해주지 않고클래스로부터 생성된 객체인 fireDetector 와 normalReporter를 전달값으로 전해주는지 이해가 안됩니다
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
퀴즈 8번 질문합니다ㅜㅜ
SpeedCam 클래스내에서 AccidentDetector와 VideoReporter 를 사용하기 위해 인스턴스 변수를 만든 뒤 setter를 사용하는 것까진 이해를 했습니다.public void setDetector(Detectable detector) { // 질문 this.detector = detector; }위의 코드에서 괄호안의 Detectable detector가 매개변수라고 이해했는데 정확히 어떤 역할인지 명확하게 이해가 되지 않아서 질문합니다..ㅜㅜ
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
Array 관한 예문
안녕하세요, 선생님. 어제 배열 파트를 다시 복습하면서 생긴 문제가 있습니다.선생님께서는 for반복문에 for -each문을 이용하면서 출력되도록 하셨는데저는 조금 더 간결하게 하고자 for-each문 없이 주석처리한대로 해보니사이즈[I@75b84c92(재고있음) 이렇게, 사이즈에 해당하는 값은 안나오더라구요.혹시 이렇게 접근하면 안되는 이유가 있을까요? 두 번째로는 메소드에 관한 문제입니다.아래 코드처럼 메소드 값을 메인영역 밖에서 호출 시 에러나는 이유가 무엇인가요?잘은 모르지만 혹시나 지역변수 이런 것과 상관이 있는건가요? //Quiz. 배열을 활용하여 쇼핑몰에서 구매 가능한 신발 사이즈 옵션을 출력하는 프로그램을 작성하시오 //조건 : 신발 사이즈는 250부터 295까지 5단위로 증가 //조건 : 신발 사이즈 수는 총 10가지 //실행결과 : 사이즈 250 (재고있음) / 사이즈 260 (재고있음),,, size에 해당하는 값을 배열로 만들기 // int size = 250; // int size = 255; // int size = 260; int[] size = new int[10]; for (int i = 0; i < size.length; i++) { size[i] = 250 + (5 * i); // System.out.println("사이즈"+size+"(재고있음)"); //왜 안되는지????????? } for (int size2 : size ) { System.out.println("사이즈"+size2+"(재고있음)"); } ------------------------------------------------------------------------------- public class Test1 { //호텔 전화번호 public static String getPhoneNumber(){ return "02-123-4567"; } //호텔 위치 public static String getAddress(){ return "서울시 어딘가"; } //호텔 엑티비티 public static String getActivities(){ return "수영장, 당구장, 볼링장"; } public static void main(String[] args) { //왜 메인영역 밖에서 호출하면 에러나지????? //메인 밑에서 매소드 호출 System.out.println("호텔위치 : "+getAddress()); System.out.println("호텔 전화번호 :"+getPhoneNumber()); System.out.println("호텔 엑티비티 : "+getActivities()); }
-
해결됨스프링 핵심 원리 - 기본편
테스트 검증할 때
안녕하세요 !계속 테스트 검증하는 과정을 반복하다보니 궁금증이 생겨 질문드립니다.강사님이 검증 코드를 작성하실 때이 강의 코드로 예시를 들면memberService.getMemberRepository();가memberRepository1 변수로 있음에도 불구하고assertThat(memberRepository1).isSameAs(memberRepository);으로 작성하지 않고assertThat(memberService.getMemberRepository()).isSameAs(memberRepository);로 작성하시더라구요.이 강의에서뿐만 아니라 지금까지 다른 강의에서도 검증 코드를 작성하실 때 변수를 사용하시지 않는 것 같았는데,혹시 이렇게 작성하시는 이유가 따로 있을까요?
-
해결됨스프링 핵심 원리 - 기본편
DI 과정을 보고 싶습니다.
Controller에서 필요한 파라미터는 ArgumentResolver가 만들거나 변환해서 넣어주듯이 DI과정에스프링 빈 생성할 때 필요한 의존성 주입을 해주는 오브젝트나 메서드가 있을거 같은데 검색을 해도 다 의존성 주입 방법만 나오더라구요..어디서 확인해야 할까요 ??
-
미해결PHP 7+ 프로그래밍: 객체지향
왜 http://localhost/ 로 접근하면 public/index.php 가 실행되나요?
영상 14:07초 부터 뷰표기되는걸 설명주셨는데사작이 public/index.php 인 이유를 모르겠습니다.
-
해결됨스프링 핵심 원리 - 기본편
excludeFilters
@Configuration //없어도 문제가 없다. 하지만 관례상 설정 파일임을 보여주기 위해 붙인다. @ComponentScan( basePackages = "hello.core", excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class) )AutoAppConfig에서 @Configuration은 관례상 붙인다라는 답변을 확인했습니다.그리고 exlucdeFilters를 보던 중 궁금증이 생겼습니다.excludeFilters는 @Configuration 클래스를 제외한다고 했는데 그러면 실제 spring을 동작 시켜서 springContainer에 빈이 등록될 때는 autoAppConfig.class는 bean으로 등록이 안되지만 @ComponentScan으로 인해서 나머지 @Component class들은 bean으로 등록된다고 생각했는데 올바르게 생각한것인지 궁금합니다.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
For반복문 예제
안녕하세요, 선생님블로그에 선생님 강의 내용에서 예제를 따라치면서 정리하는 과정에 궁금증이 생겨서 여쭤봅니다. 증감연산자의 위치가 여러 예제문에서 헷갈리는데요. (sold++;)int max = 30; int noShow = 15; int sold = 0; for (int i = 1; i <=50 ; i++) { System.out.println(i+"번 손님 나왔습니다"); if(i==noShow){ System.out.println(i+"번 노쇼로 넘어갑니다"); continue; } sold++; if(sold==max){ System.out.println("금일 영업종료"); break; } 위의 코드에서 sold++위치를 아래와 같이 바꿀 경우에 for문 중괄호 안에는 들어가 있어서 가능할 거 같은데 결과는 32번 손님까지 이어지네요. 비슷한 예제로 while문에서는 증감연산자의 위치가 break뒤에 위치한 경우 결과값이 올바르게 나오는데 확실하게 증감연산자의 위치를 구별 할 수 있는 방법이 있을까요?int max = 30; int noShow = 15; int sold = 0; for (int i = 1; i <=50 ; i++) { System.out.println(i+"번 손님 나왔습니다"); if(i==noShow){ System.out.println(i+"번 노쇼로 넘어갑니다"); continue; } sold++; if(sold==max){ System.out.println("금일 영업종료"); break; } sold++; } ------------------------------------ //while문 -break int index = 1; //손님 대기번호 , for와 달리 변수가 필요함(중요) while(index <= 50){ System.out.println(index+"번 손님 주문하신 치킨 나왔습니다"); if(index == 20){ System.out.println("금일 재료가 모두 소진되었습니다"); break; } index++; }