묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 기본편
객체지향프로그래밍 문제1번 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]return this.width == this.height <--- 이부분에만 this가 있는 이유가 궁금합니다.
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
6. synchronized 문제 1 log출력
public static void main(String[] args) throws InterruptedException { Counter counter = new Counter(); Runnable task = new Runnable() { @Override public void run() { for (int i = 0; i < 10000; i++) { counter.increment(); log(counter.getCount()); // 로그 출력 추가!!!!!!!!!!!!!!! } } }; Thread thread1 = new Thread(task); Thread thread2 = new Thread(task); thread1.start(); thread2.start(); thread1.join(); thread2.join(); log(counter.getCount()); } static class Counter { private int count; public void increment() { count++; } public int getCount() { return count; } } 문제를 푸는 도중 count의 값을 확인해보고 싶어서 MyLogger.log(counter.getCount());를 호출했더니 문제 없이 20000이 계속 출력됩니다.synchronized를 사용하지 않아서 여전히 동시성 문제는 발생할텐데 어떻게 20000이라는 값이 나오게 되는지 궁금합니다!!
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
즉시 로딩 상황에서 select문 호출에 대해 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Member 클래스의 team이 즉시 로딩으로 설정된 상황에서 아래 코드와 같이 실행 했을 때, team 엔티티의 select문이 한번 밖에 호출 되지 않습니다.저는 member 엔티티를 다 순회하면서 select문을 호출 할 것으로 예상했는데, 이 경우는 어짜피 각 member들의 team이 모두 같기 때문에 JPA에서 알아서 해당 team만 호출 하는 것인가요? 이부분이 궁금하여 질문 드립니다.Team team = new Team(); team.setName("Team 1"); em.persist(team); Team team2 = new Team(); team2.setName("Team 2"); em.persist(team2); Member member = new Member(); member.setUsername("user1"); member.setTeam(team); em.persist(member); Member member2 = new Member(); member2.setUsername("user2"); member2.setTeam(team); em.persist(member2); em.flush(); em.clear(); List<Member> members = em.createQuery("select m from Member m", Member.class).getResultList(); tx.commit();
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
서비스 네이밍
서비스는 join, 메모리에서는 save 이런 식으로 표현을 한다면, 서비스 즉 비즈니스 관점은 다른 말로 “유저입장“ 이라고 생각하면 될까요?
-
해결됨김영한의 실전 자바 - 중급 2편
강의노트 질문있습니다.
들었던 강의를 정리하는 중인데, 혹시 블로그에 강의 노트의 일부를 올려도 되나요? 컬렉션 프레임워크에 대해 작성 중인데 강의 노트 안에 collection, list, queue, set의 의존관계가 정리된 깔끔한 그림을 인용하고 싶어서요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원목록 404 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.회원 웹 기능 - 조회 영상을 따라하다 회원 목록을 누르니#이름 이 아닌 화이트라벨404 오류가 떠서 질문드립니다. 영상38초쯤에 작성하신 findmembers를 입력하면 영상에선 좌측에 List<Member> members =가 자동완성이 되던데 저는 안되길래 직접 타이핑하여 문제가 된건지 다른 이유가 있는것인지 알고싶습니다. 아래 링크입니다.https://drive.google.com/file/d/1Gx9K-pAn1YogtFvby-9sfCVsmB8WiHUg/view?usp=sharing
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
Runnable 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]https://javatrainingschool.com/multithreading/thread-lifecycle/위 링크에서는 Runnable과 Running 상태를 분리하는데 혹시 두개의 차이가 있나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
섹션2의 정적 컨텐츠 부분에 질문이 있습니다
강의를 한번 돌리고 복습중입니다 섹션2. 정적 컨텐츠 강의에서 위와 같이 /hello-static.html을 입력하여 요청하면 우선 1번과 같이 hello-static관련 controller에서 있는지 확인하고 없으면 2번과 같이 정적 컨텐츠를 내려준다고 설명하셨습니다.이와 관련하여 궁금증이 uri요청 자체가 hello-static.html로 요청자체에 .html을 요청하였기 때문에 .html을 찾아야 하는게 흐름상 맞지 않나라는 생각이 듭니다. gpt를 통해 알아보니 .html을 처리하는 controller가 있을 수 있기 때문이라고 하는데, 그렇다면 hello-static.html을 요청할 경우 스프링 컨테이너에서 찾는 controller의 이름이 어떻게 되나요??dispatcher servlet처럼 논리 이름만을 생각하여 .html을 제외한 hello-static이라는 controller의 이름을 찾을 것 같은데 맞는지 궁금하네요질문 요점: /hello-static.html로 요청했을 경우 1번 경우의 스프링 컨테이너에서 controller를 찾을때 찾는 이름의 기준이 무엇인지에 대한 질문.
-
해결됨자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
[공유] setName 시 threadName이 1부터 시작하는 이유
해당 강의 10분 경 나온 설명으로, setName 메소드 자체가 스레드 이름에 영향을 주나? 싶은 궁금증이 들어서 확인해 보았고, 저와 비슷한 궁금증을 가지신 분들이 계실 것 같아 공유드립니다. setName은 Thread name 생성 로직에는 관여하지 않습니다. 다만, 해당 예제에서는 new Thread()로 이름 없는 스레드를 생성 후(이 때 Thread-0으로 생성), 해당 Thread를 setName을 통해 Thread name을 바꿔주고 있어서, setName을 사용하면 1부터 카운트되는 것 처럼 보였던 것입니다. -> 새로 생성된 스레드의 이름은 Thread-0-> Thread-0이 yourThread로 치환됨 yourThread를 생성하는 부분에서 Thread의 이름을 임의로 넣어주고, 아래에서 스레드를 생성하면 0번부터 생성됨을 확인할 수 있습니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
최대 매출 문제
import java.util.Scanner; public class Main { public int solution(int n, int m, int[] arr){ int answer = 0, sum = 0; for(int i=0;i<m;i++){ sum += arr[i]; } for(int i=0;i<n-m;i++){ answer = Math.max(answer, sum); sum = sum - arr[i] + arr[i+m]; } //answer = Math.max(answer, sum); return answer; } public static void main(String[] args) { Main T = new Main(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); int m = kb.nextInt(); int[] arr = new int[n]; for(int i=0;i<n;i++) arr[i] = kb.nextInt(); System.out.println(T.solution(n, m, arr)); } }해당 코드가 왜 정답이 되는지 모르겠습니다.위 코드처럼 작성하면 for문의 제일 마지막번째에 sum과 answer를 비교하지 않고 answer를 리턴하게 되는건데 그럼 오답이지 않나요?10 31 2 3 4 5 6 7 8 9 10이렇게 마지막 연속된 K일에서 최댓값으로 주어진다면 값이 제대로 안 나오는데 왜 정답이 되는지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 설치 질문
제가 실수로 h2 server 를 지웠는지 저장한 설정에 h2 가 보이지 않습니다. 지우고 다시 설치해도 똑같네요 ㅠㅠ 어떻게 해야하나요?
-
미해결백엔드 개발자 성능 개선 초석 다지기
인덱스 활용 질문
인덱스를 걸때 카디널리티 수치를 확인해 높은 컬럼을 인덱스로 설정하라고 강의에서 들었습니다. 이에 궁금한 점이 몇가지 있습니다.Q1 : WHERE 절에 검색조건으로 사용되는 컬럼이 5가지라고 가정하면 가장 카디널리티가 높은 컬럼 1개만 인덱스로 걸어야 하나요?? 아니면 카디널리티가 높은 순서대로 묶어서 하나의 복합 인덱스를 만들어 주어야 하나요?? 차이점이 궁금하고 어떤 방식이 더 나은 방식인지 궁금합니다 Q2 : WHERE 절에 사용되는 검색조건인 컬럼 한개가 있다고 가정했을때 해당 컬럼의 카디널리티 수치가 낮더라도 인덱스를 만드는게 낫지 않나요? Q3 : Mysql의 경우 범위검색의 경우 B-Tree 인덱스를 사용한다고 알고있습니다 . 강의에서 만든 인덱스도 날짜이고 범위검색이니 B-Tree 인덱스를 사용한거 같습니다. 정확한 일치 검색의 경우 해시 인덱스를 사용할 수 있다고 들었습니다. 이때는 인덱스를 만들때 코드를 어떻게 써줘야 해시 인덱스를 만들 수 있나요?
-
미해결김영한의 실전 자바 - 중급 1편
안녕하세요 프로젝트 설정 관련해서 문의남깁니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 다름이 아니라 강의를 보며 코드를 작성하며 수업을 따라가고 싶은데 제공된 소스코드를 import 하지 않으면 수업을 따라가는데 힘들까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
cannot resolve symbol 문제
현재 컴퓨터에서 스프링 강의를 따라하며 개발했고 코드가 잘 돌아갔습니다. 그런데 이를 깃허브를 통해 다른 컴퓨터에서 강의를 이어 들으려고 하는데 cannot resolve symbol 문제가 뜹니다. build.gradle 파일도 제대로 되어 있고, refresh dependency도 해보고 아니면 invalid cache를 하는 등 여러 가지를 해봤는데도 문제가 해결되지 않는데, 어떻게 해야 할까요?
-
미해결김영한의 실전 자바 - 중급 2편
해당 코드는 삽입정렬인가요?
package collection.compare; import java.util.Arrays; import java.util.Comparator; public class SortMain2 { public static void main(String[] args) { Integer[] array = {3, 2, 1}; System.out.println(Arrays.toString(array)); System.out.println("Comparator 비교"); Arrays.sort(array, new AscComparator()); System.out.println("AscComparator: " + Arrays.toString(array)); } static class AscComparator implements Comparator<Integer> { @Override public int compare(Integer o1, Integer o2) { System.out.println("o1=" + o1 + " o2=" + o2); return (o1 < o2) ? -1 : ((o1 == o2) ? 0 : 1) ; } } }이 코드는 삽입정렬이 사용되어 배열의 첫 번째 요소가 정렬된 것으로 간주하고 시작하는게 맞을까요...?o1=2 o2=3o1=1 o2=2이렇게 두 단계만 거치는 이유와 o1, o2를 잡는 기준을 잘 모르겠습니다...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
build.gradle
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의 잘 듣고 있습니다. 자바 버전만 수정해서 빌드그래들 교안 그대로 입력하면 되나요? 자주하는 질문에는 다른 내용이 들어가 있는 것 같아서요
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
자바 14 새로운 switch문 관련하여 default 주석처리 하여도 에러가 나지않음. 괜찮은건지 여쭤봅니다!
스위치문(*) 문제풀이 과정에서 선생님께서 아래와같이 진행하셧습니다.*김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음, 섹션 4. 조건문, switch문 관련 건해당 문제를 자바 14 새로운 switch문 관련하여 알려주신 내용이 있어 그 방법으로도 풀어봐야겠다 싶어, 진행해 보았는데요. 아래와같이 default 를 지워도 값이 나오지 않을뿐이지 에러메시지가 출력되진 않더라구요?해당사항이 없으면 에러가 날거같은데 그렇지않아서 제가 자바 14 새로운 switch문 관련하여 문제를 잘못푼것인지 무언가를 놓친게 있는것인지 궁금하여 여쭤봅니다.감사합니다!!
-
미해결JSP 웹 쇼핑몰 프로그래밍 기본 과정(JSP WEB Programming)
5강부터 강의 화면이 안나옵니다.
4강까지는 강의 자료화면이 나오는데5강부터 강의 화면이 나오지 않습니다.....
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
스레드 대기 집합 질문
여기에서 스래드 대기 집합은 WAITING, TIMED_WAITING, BLOCKED가 보관되는 곳과는 다른 큐를 의미하는게 맞을까요?
-
해결됨김영한의 실전 자바 - 중급 2편
교안에 잘못된 부분이 있는 것 같습니다
컬렉션 프레임워크 / Collections 정렬 관련 메서드 에서reverse 메소드에 대한 설명이 "정렬 기준의 반대"로 컬렉션을 정렬한다고 되어있는데단순히 reverse메소드는 현재 컬렉션이 정렬되어 있는 것을 뒤집어 주는 메소드 인 것 같습니다