학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 세션13 - '필드 탐색과 값 변경' 복습을 하다가 의문점이 생겨서 질문을 드립니다. 영한 님이 리플렉션을 이용해서 name의 filed 값을 변경 하는 것을 보고 'final로 변경하면 안되겠지.'라는 생각을 하게 되었습니다. 그래서 userTest를 만들어서 name을 final로 변경해 보고 실험해보았습니다.(당연히 예외 터질 것을 예상 하고요) 근데 왠걸? 저의 예상과는 다르게 결과가 나오는 것을 보고, "......" 밖에 말이 안나 옵니다. 이게 코드 결과입니다. 왜 이렇게 나오는지 설명해 주실 수 있으신가요? (내용 수정) 답변 부탁 드립니다.
[오타 제보] 대상 강의록: 3. 함수형 인터페이스.pdf 대상 위치: #특화 함수형 인터페이스 - ##Operator를 제공하는 이유 - 1. 의도(목적)의 명시성 중 세 번째 글머리 대상 페이지: p.23 오타 내용 수정 전: 만약 모두 Function <T, R> 나 BiFunction<T, T, T>만으로 처리한다면, ... 수정 후: 만약 모두 Function <T, T> 나 BiFunction<T, T, T>만으로 처리한다면, ... 입력과 리턴이 같은 XxxOperator 와 비교하는 문장이기 때문에 BiFunction<T, U, R> 을 BiFunction<T, T, T> 으로 표현했으니 Function<T, R> 도 Function<T, T> 으로 표현해야 될 것 같아서 제보합니다! 앞서 배웠던 제네릭이랑 연관된 부분을 배우니 특히 더 재밌습니다!!
단원 2.데이터 입출력 구현 12번 데이터베이스 클러스터와 데이터베이스 클러스터링의 개념과 관련하여 질문드립니다. 12번 데이터베이스 클러스터를 설명하시오에서 동일한 성격의 데이터를 동일한 데이터블럭에 저장하는 물리적인 방법은 클러스터링이라는 개념인거 같습니다. 그렇다면 클러스터는 '서버'에 관한 것이고 클러스터링은 '데이터'에 관한것으로 이해하면될까요? 만약 문제가 나온다면 데이터베이스 클러스터라고 해도 정답으로 인정해주나요?
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/) [질문 내용] 선생님 질문이 있습니다. 강의 22:00 쯤 변경 감지 듣다가 궁금증이 생겼습니다. 질문은 영속 컨텍스트에 넣지 않은 상태로 DB에서 바로 가져올 땐 커밋 시점 보다 먼저 쿼리가 발생하나요? package hellojpa; import jakarta.persistence.*; import java.util.List; public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); try { Member member = em.find(Member.class, 450L); member.setName("XXXX"); // em.persist(member); System.out.println("=================="); tx.commit(); } catch (Exception e) { tx.rollback(); } finally { em.close(); } emf.close(); } } 출력결과 Hibernate: select m1_ 0.id , m1_ 0.name from Member m1_0 where m1_ 0.id =? ================== Hibernate: /* update for hellojpa.Member */update Member set name=? where id=? 예상 출력 결과는 === select ... update ... 이렇게 나올 줄 알았는데요 왜 이렇게 나오지 않을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 회원목록 화면 들어가면 저렇게 Whitelabel Error Page가 뜹니다. properties에 username도 추가했고, localhost로도 바꿨는데 계속 안되네요 ㅠ 조언 부탁드립니다ㅠ!
#include <stdio.h> int main() { char str[] = ""; if (str[0]) { printf("빈 문자열은 참입니다.\n"); } else { printf("빈 문자열은 거짓입니다.\n"); } if ("") { printf("빈 문자는 참입니다.\n"); } else { printf("빈 문자는 거짓입니다.\n"); } return 0; } 온라인 컴파일러에서 이렇게 출력을 해봤을 때 if(str[0]) 이 조건문은 거짓이라 나오고 if("") 이 조건문은 참이라고 나오는데 빈 문자열은 거짓이지만 빈 문자는 참인건가요?
[오타 제보] 대상 강의록: 2. 람다.pdf 대상 페이지: p.40 의 main() 코드 블록 오타 내용 변경 전(1): // 1. 합 구하기 ( 초기값 0, 덧셈 로직) 변경 후(1): // 1. 합 구하기 ( 초깃값 0, 덧셈 로직) 변경 전(2): // 2. 곱 구하기 ( 초기값 0, 곱셈 로직) 변경 후(2): // 2. 곱 구하기 ( 초깃값 0, 곱셈 로직) 코드 블록 에서는 초기값 이라고 되어 있고, 바로 밑에 용어 - reduce, fold 부분에서는 초깃값 이라고 되어 있어서 저도 궁금해서 검색해봤는데 초깃값 으로 표기하는 것으로 확인됩니다. 이런 맞춤법은 명확한 기준이 없이 국립국어원 마음대로 정하기는 하던데 혹시 강의록에서 단어를 통일하실 때 도움이 될까 해서 제보합니다. 출처1: IT 글쓰기와 번역 노트 - 5.1. 맞춤법 - 값 <- 여기서 페이지 조금 내리다 보면 d. 사전에 ‘-값’으로 등재된 단어 부분에 있습니다. 출처2: 초기값 - TTA 정보통신 용어사전 - "초기값은 ... => 규범 표기는 '초깃값'이다." 출처3: 국립국어원 답변 - "'최댓값', '최솟값', '초깃값'이 표준어입니다 ..."
안녕하세요 비관적 락에 대해서 잘 배우고 있습니다. 비관적 락1이 단순히 네이티브 쿼리를 이용하여 update 문 해서 바로 count를 수정하는건데 초반에 알려주신 조회할 때, 조회 락이 안 걸려서 데이터 일관성이 깨지는 거 알려주셨는데 비관적 락 1은 조회 자체를 생각하고 바로 갱신만해서 좋아요 수 카운트를 하는 건가요? 만약에 그렇다면 업데이트 시 락이 걸려 다른 트랜잭션 접근이 안되어 일관성이 유지가 되는 것은 이해가 갑니다. 테스트시 100번 동시 접근할 때 비관적 락2처럼 정합성이 보장되는거면 굳이 1이 더 빠르고 정확할텐데 비관적 락2를 쓰는 이유가 궁금합니다. 그리고 챗gpt한테 물어보니 단순히 update문하여 수정하는 것은 동시성 접근에 해결책이 안된다고 비관적 락 2쓰라고 하는데 테스트에서는 동시 100개가 접근해도 일관성이 충족이 되는거 보니 어느쪽이 맞는건지 모르겠습니다
18:41 유형 8에서는 업캐스팅 형태일때, 메소드를 부모: static void display() 자식: static void display() 위와 같이 선언하여야 하며, 부모 메소드에서 static을 없애면 에러가 난다고 하셨습니다. 그렇다면 만약, 유형 9와 같이 업캐스팅 형태가 아니고, Child obj = new Child(); 로 인스턴스를 생성하였는데, 부모: static void display() 자식: void display() 와 같은 형태로 메소드가 구성되어 있다면 obj.display()를 했을때, 에러가 발생하나요? 자식에도 static이 있어야지 상속이 가능하다는 부분이 업캐스팅일때만 적용되는건지, 업캐스팅이 아니어도 동일하게 적용되는건지 궁금합니다.
강의 18:20에서 char str1[5] = {'H', 'e', 'l', 'l', 'o'}; 이게 이 전 강의인 배열과 문자열 강의에서 마지막에 '\0' 를 넣어줘야 문자를 인식한다고 이해했는데요 char str1[5] = {'H', 'e', 'l', 'l', 'o', '\0'}; 으로 안되어있어도 상관 없는건지 궁금합니다. 또한 저렇게 된다면 str1[6] 이 되어야하는 건가요? 제가 혼자 생각해본 바로는 만약 출력문에서 printf("%s" , str1[]) 로 출력을 하려고했다면 char str1[5] = {'H', 'e', 'l', 'l', 'o'}; 이것이 아닌 char str1[5] = {'H', 'e', 'l', 'l', 'o', '\0'}; 이렇게 선언을 하는게 맞는걸까요? +그렇다면 만약 예제에서 char str1[] = {'H', 'e', 'l', 'l', 'o', '\0'}; 이었다면 sizeof(str1) 과 sizeof(str2)의 값은 같아질까요?
8:00 "기준문자".join부분이 이해가 잘 안가는데 기준문자로 배열을 문자로 만든다는게 기준문자 ,랑 뒤에 'Hello', 'World'랑 무슨관련이있나여..? find('World')7번째는 공백아닌기여? 8:47 파이썬은 문자열을 출력하면 다 작은따옴표('')나 큰따옴표("")가 붙어서 출력되나요? 파이썬 지식이 별로 없어서 기초적인질문 죄송합니다ㅠㅠ