[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 배열과 비교한 리스트의 이점으로 itemCount와 같이 배열에 몇 개의 데이터가 추가 되었는지 추적하는 변수를 제거할 수 있다고 했는데, MyArrayList calss에서 add(E e) 메서드를 보면 size++; 부분이 동일한 역할이을 하고 있는 것이 아닌가요?
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 10:30초 쯤부터 설명해주시는 내용이 잘 이해가 안가서 질문드립니다. article 테이블에 insert 문과 update 문을 동시에 실행한다고 하더라도 서로 다른 레코드에 대한 작업이어서 update문이 실행될 때 x-lock이 걸리는 레코드는 insert하는 레코드와 상관 없을 거라고 생각했는데 게시글 쓰기와 좋아요 수 쓰기 작업을 할 때 어떻게 동일한 레코드에 락이 걸릴 수 있는지 상황이 잘 안그려지네요.. 게시글을 새로 작성하는 경우가 아니라 게시글 수정 - 좋아요 수 업데이트 간에 동일한 레코드에 대한 락이 잡힐 수 있는 상황을 말씀하신 건가요??
59분 14초까지 따라가서 arr[0]까지 되는건 이해가 가는데 그 뒷부분이 설명이 여러번 다시들어봐도 거기서 길을 잃었어요.. 계산을 return줄에서 해서 그 값으로 위로 쭉쭉 올라가면서 계산하는게 맞나요? 59분 42초에서 arr[1] arr[0] 이렇게 적으셨는데 return(arr[size-1]>max)?arr[size-1]:max; 에서 size에 1을 넣으면 배열[0]이 1인건 알겠는데 5(배열[1])가 어디서 어떤식으로 나와서 어떻게 비교가 되는건지 모르겠어요
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
안녕하세요 fetch join까지 적용한 후에 테스트 코드 자체가 N+1 문제가 제거된 것은 확인했습니다. 그런데 AfterEach 함수에서 deleteAll을 하는 과정에 fetch join 이전의 N+1 쿼리랑 유사한 쿼리가 나오는데 이게 delete 쿼리를 날리기 위한 데이터를 가져오려는 목적인것 같은데 질문이 있습니다. 혹시 deleteAll 이전에 나오는 쿼리도 N+1처럼 동작하는지 테스트 코드이므로 테스트 객체의 모수가 작아 무시해도 되는지 이정도 질문하고 싶습니다
학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 무한 depth는 이전 강의에 소개된 adjency list로도 구현이 가능하고 또 adjacency list, path enumeration 방법 외에도 nested set, closure table 방법도 있는 걸로 알고 있습니다. path enumeration 방법을 선택한 이유가 따로 있을까요??
[질문 내용] 여기에 질문 내용을 남겨주세요. public class MemberThis { public String nameField; public void initMember( String nameParameter ) { nameField = nameParameter ; } } 위에서 public void initMember( String nameParameter ) 이 메서드를 선언하는거라고 생각했는데요. 왜 public이랑 void 사이에 static이 없는건가요? 왜 없어도 되는건지 모르겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강사님 강의 항상 감사하게 보고있습니다 연결리스트의 삭제에서 초기화를 시킨다고 했는데 참조값의 연결의 끊으면 사용되지 않으므로 gc대상이 되니 초기화는 안해도 되지 않나요? 제가 놓친 부분이 있으면 말씀 부탁드리겠습니다 :)
39:00 쯤에 자체적인 id 가 있다면 엔티티이므로 엔티티의 값을 수정할 수 있다고 말씀하셨는데요. 수정할 수 있다는 데이터는 모든 값타입을 의미하는 건 아니라고 받아드려지는데 맞을까요? 즉, "값타입(자바 기본값(원시, 포장) , 임베디드, 컬렉션) 들 중에 자바 기본값만 수정해도 된다." (임베디드와 컬렉션은 setter메소드를 사용하면 안되니 private나 제거를 해야한다고 권장하셨기 떄문입니다.)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. Postman에서 http://localhost:8080/api/v1/members 를 POST하는 것을 하고 있는데 실행하면 아래와 같이 뜨고 insert into member (city, street, zipcode, name, member_id) values(NULL, NULL, NULL, 'hello', 1) 도 안뜨고 insert문 또한 한줄로 안나타나고 여러줄로 나옵니다...왜 이런걸까요 ?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의에서 `주 테이블이나 대상 테이블 중에 외래 키 선택 가능`이라고 하셨는데 `대상 테이블에 외래키가 있는 일대일 단방향 관계는 JPA에서 지원 안한다는 게` 무슨 말인가요..? 그러면 외래 키 선택 기준 이런 거 얘기할 필요 없이 무조건 일대일 단방향 관계에서는 주 테이블에 외래키를 설정해야하는 거 아닌가요
Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); member.setName("member1"); member.setTeam(team); em.persist(member); //em.flush(); // 영속성 컨텍스트에 있는 쿼리를 db에 전송한다. //em.clear(); // 영속성 컨텍스트를 초기화 // 이렇게 하면, 위 em.persist()를 통해 영속성컨텍스트에 있는 Member를 가져오는게 아니라, // em.find()를 할때 db에서 select를 해서 가져온다. Team findTeam = em.find(Team.class, team.getId()); List<Member> members = findTeam.getMembers(); for (Member m : members) { System.out.println("m = " + m.getName()); } 여기에서 em.flush()와 em.clear()를 하지않으면, findTeam에 Members가 비어있는 이유가 무엇인지 모르겠습니다. em.flush()를해서 db에 있는 Team데이터와, em.flush()하지않은 영속성컨텍스트에 있는 Team데이터가 무엇이 다르길래 영속성컨텍스트에서 em.find를 하면 members가 비어있는것인지 모르겠습니다. 즉, db를 통해 em.find하면 members가 있고, 영속성컨텍스트를 통해 em.find를 하면 members가 없는데 왜 그런것인가요? 1차캐시에 team데이터를 저장하는것과 db에 team데이터를 저장하는것이 다른가요? 강의를 계속 봐도 이해가 가질않아 질문드립니다.
카프카 설치 과정에서 뭔가 오류가 발생한거 같은데 해결이 어려워 글 남겨봅니다. 2025-02-05 20:04:47 ===> User 2025-02-05 20:04:47 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser) 2025-02-05 20:04:47 ===> Setting default values of environment variables if not already set. 2025-02-05 20:04:47 CLUSTER_ID not set. Setting it to default value: "5L6g3nShT-eMCtK--X86sw" 2025-02-05 20:04:47 ===> Configuring ... 2025-02-05 20:04:47 ===> Launching ... 2025-02-05 20:04:47 ===> Using provided cluster id 5L6g3nShT-eMCtK--X86sw ... 2025-02-05 20:04:47 # # A fatal error has been detected by the Java Runtime Environment: # # SIGILL (0x4) at pc=0x0000ffff9513fc5c, pid=13, tid=390 # # JRE version: (21.0.4+7) (build ) # Java VM: OpenJDK 64-Bit Server VM (21.0.4+7-LTS, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64) # Problematic frame: # j java.lang.System.registerNatives()V+0 java.base # # No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /tmp/hs_err_pid13.log [0.016s][warning][os] Loading hsdis library failed # # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # 오류 로그는 이렇구요. 대강.. 자바 버전? 제 로컬환경과 뭔가 문제가 있는거 같은데.. 맥미니 M4 이구, java -version openjdk version "21.0.5" 2024-10-15 OpenJDK Runtime Environment Homebrew (build 21.0.5) OpenJDK 64-Bit Server VM Homebrew (build 21.0.5, mixed mode, sharing) 검색해보니 M4에서만 일어나는 문제인거 같기도 하고.. sve 라는 옵션을 꺼보래서 docker run -d --name kuke-board-kafka -p 9092:9092 -e FAFKA_JVM_PERFORMANCE_OPTS="-XX:UseSVE=0" apache/kafka:3.8.0 이런식으로 설치 해봤는데 마찬가지네요. 뭘 시도해봐야할지 도움 좀 부탁드립니다.
먼저 좋은 자료 감사합니다. 해당 예제대로 진행하면 전부 동작 잘하는데 비관적 락 테스트 할때 테스트에 @Transactional을 붙이면 동작이 지연되다 실패하는데 그러한 이유로 테스트 전후 처리를 해주시는 걸까요? 테스트에서 @Transactional(롤백)을 사용안하시는 이유가 있을까요?
만들어진 게시판을 간단하게 배포를 하려면 어떤 순서로 하는 것이 좋을까요? 직접 배포를 해보고 데이터의 이동 흐름을 보고 싶어서요. GPT 선생님은 아래와 같이 하라고 하는데, 선생님께서 생각하는 간단한 방법이 있는지 궁금합니더... 🚀 간단한 배포 방법 Docker Compose 파일 작성 ( docker-compose.yml ) 애플리케이션 컨테이너화 (Dockerfile) 서버(배포 환경)에서 실행 1⃣ docker-compose.yml 을 작성해서 모든 서비스(MySQL, Redis, Kafka, App)를 한 번에 실행 2⃣ Dockerfile 을 작성해서 애플리케이션을 컨테이너화 3⃣ 서버에서 docker-compose up -d --build 실행으로 배포 완료
영한님 강의에서 where절에 들어가는 모든 구분은 전부 영어입니다. ex) where(member.username.eq("member1")) 근데 저는 한글데이터를 넣고 where을 해보니 원하는 결과가 조회되지않았고 다음과같은 로그가 출력됩니다. org.hibernate.orm.jdbc.bind : binding parameter (1:VARCHAR) <- [%2프%] /**/prep5.setString(1, "%2\u1111\u1173%"); '2프'라는 글자를 where절에 넣어서 조회하려하고 hibernate에서는 실제로 %2프% 라는 원하는 결과를 바인딩 해줬습니다. 하지만 h2db의 로그에서는 2는 제대로지만 프가 ㅍ과 ㅡ를 분리하여 유니코드로 치환된 상태로 바인딩이 되서 분명 데이터가 있음에도 아무데이터도 조회되지않습니다. h2db에서 prepareStatement에 한글을 바인딩할때 깨지는현상 어떻게 해결할 수 있나요??
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] h2database 설치 페이지로 아예 넘어가질 않습니다. 사이트의 문제인건가요?
안녕하세요. 스프링부트 프로젝트 세팅 중 계속해서 같은 예외가 발생해 문의드립니다. 해당 예외 발생 관련해 검색해서 Settings, Project Structure의 버전도 확인하였고, 혹시 build.gradle에서 문제가 있는건가 싶어 강사님의 build.gradle 파일을 복사해서 재빌드 해보았지만 계속 같은 예외가 발생하고 있습니다. File > invalidate Caches > Invalidate and restart도 안되네요.. 어떻게 해야하나요?? ㅜㅜ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강사님 강의 항상 잘 보고있습니다 🙂 이번 강의에서 ArrayList 클래스를 직접 사용하지 않고, 별도로 클래스를 구현하여 기능을 설명해 주셨는데요. 이전 강의에서는 직접 구현한 뒤 해당 클래스를 함께 활용하셨던 것으로 기억하는데, 이번에는 ArrayList를 전혀 사용하지 않고 직접 구현만 하신 점이 궁금해서 문의드립니다. 혹시 ArrayList를 사용하지 않아도 충분히 개념을 설명할 수 있어서 그렇게 진행하신 걸까요? 아니면 별도로 구현하는 것이 ArrayList의 내부 구조를 더 잘 이해하는 데 도움이 되기 때문일까요? 강의 정말 유익하게 보고 있으며, 많은 걸 배워가고 있습니다!제 질문이 혹시 의도를 제대로 파악하지 못한 것이라면 너그럽게 이해해 주시면 감사하겠습니다. 😊