[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] @SpringBootTest 사용 이유가 궁금합니다. 강의에서 MemberServiceTest에서는 사용하지 않고 MemberServiceIntegrationTest에서는 사용을 합니다. 자료에는 "스프링 컨테이너와 테스트를 함께 실행한다." 라고 간략하게 설명이 되어 있습니다. 제가 이해가 부족하여 영상 및 해당 설명으로 이해가 되지 않습니다. 제가 이해한 바로는 @SpringBootTest는 DB를 사용하여 넣는 건지 궁금합니다. 감사합니다.
현재 컴퓨터에 업무로 인한 파일들이 많아 용량으로 인해서 파티션을 나누는 용량을 포함해서 아무리 해도 용량 확보가 어려운 상황에.. 본체에 추가적으로 SSD를 추가할 수 없는 상황인데 혹시 현 상황에서 우분투를 외장 SSD에 설치한 뒤에 학습을 진행하여도 문제가 없을까요 ? 혹은 vm웨어를 통한 가상환경에서도 학습에 문제가 없을지 궁금합니다.
헷갈려서 질문이 조금 많은데요ㅠㅠ [1] 5:29 대에서 숫자 0이 i에 들어가고 0 번째 인덱스 값을 가진 요소 1을 갖고 올 수 있고, 코드 실행해주고 i(0)이 1 증가되니 arr.length = 길이가 5 니까 i < 5 를 조건식으로 해석해서 i[0] ~ i[4] 까지 인덱스를 기준으로 출력하므로 1,2,3,4,5 가 출력 되는게 제가 맞게 이해한 걸까요? [2] for ( let i = 0; i < timeKeys.length; i = i + 1 ) { console.log (timeKeys[i]) } 에서 timekeys도 배열이고 똑같이 길이(length) 갖고 있으니까, 길이만큼 반복 하는 거니까 ( 길이 =4 ), timeKeys[0] timeKeys[1] timeKeys[2] timeKeys[3] 이렇게 돼서 인덱스 0 부터 인덱스 3까지 출력되는거니까 배열의 요소인 remainingDate (인덱스 0) ~ remainingSec (인덱스3) 까지 출력되는게 맞나요? 살짝 헷갈리니 제대로 이해했는지 모르겠어요..ㅠㅠ [3] 객체 접근할 때 쓰는 브라켓 노테이션 원리는 알겠는데 console.log(documentObj[docKeys[i]]); 이 부분이 잘 이해가 안돼요 documentObj 라는 객체를 출력하기 위해 브라켓 노테이션을 사용해서 태그를 접근한 것 같은데, [docKeys[i]] 를 사용한 원리와, documentObj[docKeys[i]] 자체가 태그가 되는 이유를 모르겠어요.. 자세하고 쉽게 알려주시면 감사하겠습니다!
코딩 초보이고 컴퓨터에 대해 그렇게 잘 알지 못합니다. '이것이 진짜 크롤링이다-기본편' 강좌에서' 파이썬에서 엑셀 다루는 방법'을 듣고 있는데, 강의를 따라하면서, '참가자' 라는 엑셀파일을 만들어 저장을 마쳤고, 파일을 다시 불러서 셀에 자료를 추가 입력하려고 하는데 파일에 추가 입력이 되지 않아서 VS Code 화면에서 그 파일을 열었더니 다음과 같은 메세지가 뜹니다. '파일이 이진이거나 지원되지 않는 텍스트 인코딩을 사용하기 때문에 편집기에 표시되지 않습니다.' 이 강의를 마치면 '이것이 진짜 크롤링이다-실전편'를 수강하려고 하는데 진도를 못 나가고 있습니다. 바쁘시겠지만 답변 부탁드립니다.^^ 파이썬#엑셀파일 불러오기
안녕하세요. <template> 안에 <div v-for="(a, index) in aList" .... 라고 구현하고, 여기서 저는 v- for문 안에서 a가 변할 때마다 그것을 감지하여 <script>에서 함수를 구현하고 싶었습니다. v-for안에서 aList를 돌면서 'a 변하기 -> 감지 -> script의 함수에서 로직 실행 -> 화면 출력' 를 반복하고 싶습니다. input, select 형태가 아니라 화면을 출력하기 위한 v-for 문입니다. 제가 생각한 방법은 1) v-model이나 v-bind 사용 -> 적절하지 않은 것 같습니다 2) a를 script의 지역변수로 넣어서 해당 지역변수를 감지하기 -> 어떻게 하는지 방법을 모르겠습니다. 두 방법 모두 다 잘 되지 않아서 방법을 여쭤보고 싶습니다. 감사합니다!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx ) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG ) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예 [질문 내용] 여기에 질문 내용을 남겨주세요. Team teamA = new Team(); teamA.setName("팀A"); em.persist(teamA); Team teamB = new Team(); teamB.setName("팀B"); em.persist(teamB); Member member1 = new Member(); member1.setUsername("회원1"); member1.setTeam(teamA); em.persist(member1); Member member2 = new Member(); member2.setUsername("회원2"); member2.setTeam(teamA); em.persist(member2); Member member3 = new Member(); member3.setUsername("회원3"); member3.setTeam(teamB); em.persist(member3); int resultCount = em.createQuery("update Member m set m.age=20") .executeUpdate(); em.clear(); Member findMember = em.find(Member.class, member1.getId()); System.out.println("findMember = " + findMember.getAge()); System.out.println("resultCount = " + resultCount); tx.commit(); System.out.println("resultCount = " + resultCount); } catch (Exception e) { 해당 코드를 보면 em.clear(); 이걸하면 영속성 컨텍스트를 초기화해서 db 에서 값을 가져온다는데요 tx.commit(); 하기 전에는 breakpoint 를 찍어보면 db 에 반영이 안되어있는데 어디 db 에서 가져온다는 말인지 잘 이해가 안됩니다.. 즉 한마디로 1.em.clear(); 을 하면 영속성컨텍스트 전체 초기화 2.findMember.getAge() 이 동작을 할때 영속성컨텍스트에 값이 없으므로 Db 에서 가져옴 3. 하지만 commit 하기전 그 시점엔 db에는 아무값이 없다 (flush 의 경우에도 마찬가지 insert 가 적혀있어도 커밋 직전엔 실제 db에는 아무 값이 없다) 도대체 어떤 db에만 반영되었고 (이건 임시 db인건가) 가져온다는 말인지.. 왜냐하면 그때 실제 db에는 그 당시에 아무값도 없기때문 (commit 이 일어나지 않았기 때문에) (하지만 System.out.println("findMember = " + findMember.getAge());); 이 결과로보면 findMember.getAge()의 20이란 숫자를 select 해서 가져온건 맞음 도대체 어디서 select 를 했단 말인가..) -콘솔 결과값 이 순간 ! db 를 조회하면 (tx.commit 을 안했을 가정.) ps. 제가말한 Db 는 h2 콘솔에서 조회했을때입니다. 콘솔에서 조회했을때는 안보이는데 분명 어딘가의 db 는 바뀐게 맞는거같아요 db에있는 20이라는 숫자를 어디서 가져오는지가 궁금합니다.
일단 레벨 블루프린트 안에서는 구조체에 좌표 입력, 출력이 정상적으로 됐습니다. 그리고 배운대로 코드를 짜니 물체 이동이 정상적으로 구현이 됐습니다. 문제는 투사체(폰) 블루프린트를 만들어서 구조체에서 좌표값을 받아오려고 했는데요 레벨 블루프린트에선 정상적으로 작동하던 코드를 투사체 블루프린트로 옴기니까 작동이 안됩니다. 이 투사체(폰) 블루 프린트에서 구조체 값을 읽어오지 못해서 발생한 문제인데요.(포맷 텍스트로 좌표를 읽어오지 못하는걸 확인했습니다.) 왜 읽어오지 못하는 걸까요? 원래 안되는 걸까요? 그냥 기능적으로 안되는게 많이 있던데 이것도 그런건가요??
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니요) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 EntityA 1:N EntityB EntityB 1:N EntityC 이런식으로 있을 때 , EntityA 가 EntityB를 @oneToMany로 가지고있고, EntityB 가 EntityC를 @oneToMany로 가지고 있습니다. 배치사이즈 옵션을 넣고 select a from EntityA a 했을때 , EntityA의 갯수만큼 EntityB에 in절로 EntityA의 키값을 넣어서 @oneToMany를 한번에 끌고왔다고 했을 때 , EntityB안에있는 EntityC를 또 EntityB의 갯수만큼 EntityC에 in절로 EntityB의 키값을 넣어서 한번에 끌고 올 수 있는 방법이 있는지 궁금했습니다. 다중 페치조인 안되는걸 알지만 예를 들어서 이런걸 원한다고 생각하시면 될 것 같습니다 select a from EntityA a join fetch EnitityB(List) b join fetch b.EntityC(List) 이런식으로 컬럼 갯수가 일대다 일대다로 기하급수적으로 증가하는 경우인데 배치사이즈를 사용하여 select a from EntityA a 를 했을 땐 a.EntityB 에 접근할때 당연히 in 절로 가져와주지만 EntityB의 일대다인 EntityC 를 조회 할 땐 N+1이 다시 터집니다 엮여있는 모든 연관관계들을 IN절로 태우고 싶은데 방법이 없을까요?
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
자바에서는 Entity나 클래스를 만들 때 접근 제어자로 private을 붙이는게 일반적이었는데요. 코틀린에서는 그렇게 하면 객체를 생성하고도 밖에서 바로 접근이 안 되는 거 같네요ㅠ private을 붙여주고 custom getter 같은걸로 객체 생성 후 호출하게 해주는 것이 좋은가요? 아니면 접근 제어자를 안 붙이고 그냥 쓰는게 좋은가요..?
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 사용자 정의함수를 db에 등록시켜놓은 다음에 jpql로 사용을 해보니 따로 방언을 등록하지 않아도 사용이 가능합니다. List<String> str = em.createQuery("select create_prefix(m.username) from Member m", String.class).getResultList(); create_prefix는 직접 등록한 함수입니다. 수업에서는 방언으로 사용자 정의 함수를 등록해야지 적용이 된다고 하는데 이 경우 왜 작동되는지 알고싶습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 실무에서 트랜잭션 매니저를 두개 이상 사용하는 경우가 많나요? 기본적으로 스프링부트가 빈에 트랜잭션 매니저를 등록해주는데 그거 말고 다른 트랜잭션 매니저를 사용해야하는 경우들은 어떤 경우들이 있을까요 ? 검색 해보니 데이터베이스를 나눌 때 두개이상을 등록하는데 맞을까요? 감사합니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요! [강의] 주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화 관련해서 궁금한 점이 있습니다. findAllByDto_flat()에서 distinct를 통해 중복을 제거하는게 아니라 강의와 같이 findAllByDto_flat() 호출 후 groupingBy를 통해 중복을 제거했을 때 서로 어떤 차이가 있나요?