묻고 답해요
163만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
14:39 질문드립니다.
덮어씌워진다는게 이해가 안되서요! test1 = name();이 실행되었을때 홍길동이 입력되면 return 되는 값은 홍길동 아닌가요??질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야어떤 강좌에서 질문하셨는지 알 수 있습니다.영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다.이미 다른 누군가가 질문을 한 이력이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다.학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다.제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다.시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산)질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
H2 DB 로그인 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]오류 내용: 로그인 시도 시 Wrong user name or password라고 뜹니다. (Wrong user name or password [28000-232] 28000/28000)스프링부트 버전: 3.4.2H2 버전: 2.3.232build.gradledependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' implementation 'org.springframework.boot:spring-boot-starter-jdbc' runtimeOnly 'com.h2database:h2' }application.propertiesspring.application.name=hello-spring spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa 버전에 알맞게 h2를 설치한 후, 윈도우 환경에서 h2.bat를 실행했습니다.강의자료를 보며 추가해야 할 코드를 다 추가한 것 같은데, 로그인이 되지 않고 무엇이 문제인지 모르겠습니다.또, 새로고침 시에 사용자명이 기본적으로 sa가 아니라 계속 admin으로 표시됩니다. (로그인할 때는 sa로 바꿔 로그인 시도했습니다.)
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
synchronized와 메모리 가시성
각각의 CPU 코어에는 각각의 캐시 메모리가 있고 여기에 임의의 쓰레드가 할당되어 실행된다고 하셨습니다.RAM에서 캐시 메모리를 가져올 때 primitive type은 직접 값을 가져오므로 메모리 가시성 문제가 발생할 수 있지만 참조값을 가져오는 경우에는 캐시 메모리에서도 참조를 하게되므로 가시성 문제가 존재할 수 없는 구조인가요?synchronized 메서드 안에서 사용된 멤버 변수의 경우 자동적으로 volatile로 처리된다고 이해하면 될까요?항상 감사합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
thyme leaf 관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]thymeleaf를 사용해서 표를 만들려고 합니다.상품명 | 과세/면세 | 구매처1 | 구매링크1 | 구매처2 | 구매링크2 ....아이폰 | 과세 | 쿠팡 | coupang.com.... | 네이버 | naver.com.....이런식으로 작성하려고 합니다.우선 Controller에서 thymeleaf 로 넘기는거까지는 했는데구매처 리스트에서 상품명 별 제일 많은 구매처 객체 개수에 맞게 제목을 구매처N 까지 늘려서 만들고 싶은데 방법이 있을까요??
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
17:39 부분 질문입니다.
안녕하세요.17:39부분에서 printf("Float:%.2f\nDouble: ~ 부분 질문입니다.각각의 값을 할당을 시켜주시고 있는데혹시 어떤 기준으로 할당을 시키는지 알 수 있을까요? ':' 이것을 기준으로 하는걸까요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
DML 쿼리 질문
03:14select와 delete는 뒤에 from이 붙는데,update는 from이 없이곧바로 update students로 쓰는게 맞나요?혹시나 오타가 아닌지 문의 드립니다!
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
플래그를 exit 조건문에 함께 사용하면 try-with-resources 를 사용해도 되지 않나요?
질문드립니다.SessionV6 코드의 try 구문 안에 클라이언트가 exit을 입력하면 try 구문을 탈출하게끔 하는 조건문이 있잖아요.if (received.equals("exit")) { break; }이 조건문에 closed 플래그를 다음과 같이 함께 적어주면,if (received.equals("exit") || closed) { break; }어자피 ShutdownHook 에서도 Session의 close() 메서드를 호출하고, closed를 true로 바꿔주니까 try 구문에서도 break가 실행될 수 있지 않나요?그렇다면 I/O 스트림을 try-with-resources 로 설정해도 괜찮지 않나요?제가 놓치는게 있다면 알려주시길 부탁드립니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
28:24 static함수의 hiding 개념은 아예 고려안할까요?
st.b가 static 클래스 안에서 static 변수로 int b=0으로 정의되었으나, main 안에서 st.b를 정의해준것도 없고 하이딩될수밖에 없어서 그냥 st.b는 0을 그대로 갖다가 출력하는게 아닌가요?st.a가 위에서 가져다 20으로 썼는데 좀 헷갈리네요.
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
각 사용자는 게시글 1개당 1번 조회수 증가'일 경우 설계 질문 드립니다.
안녕하세요 쿠케님!강의에 나온 10분의 TTL이 없을시 조회수 증가 관련되서 질문드립니다!' 현 상황에서 게시글 접근시 마다 조회수 증가 API를 호출하고 있습니다.테이블 정보는 다음과 같습니다. Board 테이블 id(auto-increment) readCountBoardRead 테이블 id(auto-increment) boardId userId 게시글 상세 접근시 마다 호출하는 '조회수 증가 API'의 흐름은 다음과 같습니다.1. 해당 게시글을 유저가 조회 했는지 검증 (BoardRead 테이블에서 검증)1-1. 조회 한 이력이 있으면 return;2. Board 비관적 락 조회3. Board 테이블 readCount 업데이트4. BoardRead 테이블 insert Board의 readCount는 게시글 조회수를 나타내고, BoardRead는'각 사용자는 게시글 1개당 1번 조회수 증가'를 검증하기 위한 용도 입니다.'각 사용자는 게시글 1개당 1번 조회수 증가' 정책을 반드시 가져가야 한다면BoardRead 테이블에 있는 데이터도 레디스로 옮겨야 할까요?그런데 조회수 데이터는 계속해서 쌓일테고 비즈니스에 중요하지 않은 데이터가 레디스 메모리만차지하는 느낌이 들어서 꺼려지더 라구욤.. 강의 내용대로 TTL을 걸수 밖에 없는건가 고민도 듭니당..(레디스는 클러스터 환경으로 사용하고 있습니다.) 기능은 그대로 유지하되 비관적 락을 뺄 수 있는 방법이 있을까요? ※ 번외로 트래픽 바로 몰리니까 비관적 락 로직 때문인지 잠금 이슈 나서 디비 바로 터졌버렸네요 하하하 ㅠ비관적 락을 선호하지 않는 이유를 체감해버렸다.. ※ 뇌 + GPT 갈구니까 아래와 같은 여러 결론이 나왔습니다.해결책11. Redis SET 자료구조로 중복 체크, 최초 조회면 TTL 걸어줌2. 분산락(Redis)을 걸고, Board 테이블 readCount 업데이트 및 BoardRead Insert 수행3. 락 해제해결책21. Redis SET 자료구조로 중복 체크, 최초 조회면 TTL 걸어줌2. 비동기로 Board 테이블 readCount 업데이트(낙관적 락 적용) 및 BoardRead Insert 수행작성하면서 문득 'readCount를 정규화 할까?' 했는데 스케이링 넘 클것 같네요..이유는 테이블 설계를 JPA의 상속을 활용하는 방안으로 했기 때문에 readCount 필드가 '게시판'이란 추상 클래스에 위치해 있습니다.주저리 주저리 적어봤는데 머릿속에 혼란이 오네요 ㅠㅠ자기전 마지막 생각레디스의 incr를 이용해 조회수 관리, 조회수 데이터는 mysql에 주기적으로 백업
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
배열과 문자열10:04초 질문드립니다.
printf("%s/n",str);이면 포인터 변수값 자체가 나와야하는게 아닌가 싶어서 문의드립니다. *문자가 없으니까 str안에 저장된 값이 아니고 포인터 자체 값이 나오는게 아닌가요?
-
해결됨실전! Querydsl
MemberJpaRepository basicTest에서 JPAQueryFactory 빈 등록 안됨 오류
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]순수 JPA 리포지토리문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용]실전! querydsl 강의에서 4강의 순수 JPA 리포지토리와 quertdsl을 듣고 있습니다. 메뉴얼 따라서 MemberJpaRepository를 작성하고 basicTest를 실행했는데 No qualifying bean of type 'com.querydsl.jpa.impl.JPAQueryFactory' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} 오류가 나면서 실행이 안됩니다. JPAQueryFactory가 빈으로 등록이 안됐다고 하는거 같은데 MemberJpaRepository 생성자 안에서 할당해 주니까 memberRepository를 Autowired 할때 자동으로 들어간다고 생각했는데 아닌가요..? 검색해보니 JPAConfig 클래스를 생성해서 직접 bean을 등록하고 테스트에 @Import(JPAConfig.class)어노테이션을 작성해서 해결하면 된다고는 하는데 메뉴얼에 관련 내용이 없길래 다음 단계로 진행하기 전에 질문 드립니다. 정확한 상황을 알려드리기 위해 오류 발생 사진을 함께 첨부합니다.
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
봤어요 초기화
실기 재도전하려고 하는데 진도율 초기화 어떻게 하나요?
-
미해결더 자바, 코드를 조작하는 다양한 방법
클래스 로더가 메소드 영역에 저장하는 것은 바이트코드인가요?
안녕하세요! 수업 잘 듣고 있습니다!클래스 로더 수업 중에 로딩 과정에서클래스 로더가 .class 파일을 읽고 그 내용에 따라 적절한 바이너리 데이터를 만들고 "메소드" 영역에 저장.이라는 말이 있는데 바이트 코드가 메소드에 저장되는거 아닌가요? 인터프리터를 거쳐야 바이너리 데이터가 되는거 아닌가요?
-
미해결김영한의 실전 자바 - 기본편
OCP원리 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]12. 다형성과 설계 강의 자료에서 OCP원리를 보면 코드 수정은 닫혀 있다는 의미에서 "새로운 차를 추가하게 되면 기능이 추가되기 때문에 기존 코드의 수정은 불가피하다. 당연히 어딘가의 코드는 수정해야 한다."라고 되어 있습니다. 기존 코드의 수정이 불가피하다고 하는데 왜 코드 수정은 닫혀 있다고 표현하는 건가요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
#define SQUARE(x)((x) * (x))에 대한 예시는 없을까요?
#define SQUARE(x)((x) * (x))에 대한 예시는 없을까요? SQUARE(x)에 ((x) * (x))를 정의하는건지SQUARE에 (x)((x) * (x))를 정의하는건지 모르겠어요
-
미해결김영한의 실전 자바 - 기본편
접근제어자, 클래스 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.class의 접근제어자를 private으로 설정시 외부 호출을 막는 것은 이해를 합니다.class의 volume 변수에 대해 실제 수정 해야 상황일 경우 (volume 200이 가능하게 되었을 때) privat로 설정된 volume 변수 수정 권한을 setting하는 것은 어떤 조직 구성과 방법으로 하는지 실제 경험을 사례로 설명을 요망합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
RunWith
프로젝트 생성부분의 마지막 강의 수강중이고, 위와 같이 코드를 작성했을 때 다음과 같은 오류가 납니다https://drive.google.com/file/d/1g1uPQj8hZvNmWr3u9NBwMTuI_NOZWSKC/view?usp=sharing프로젝트 파일도 같이 첨부합니다
-
해결됨얄코의 떠먹여주는 객체지향 디자인 패턴
안녕하세요.
"구독자들에게 메시지를 보내는 발행 메소드는 발행자 인터페이스를 적용한 클래스로부터 호출 받습니다." 라고 설명해주셨는데요코드상에서는 Broker 클래스가 따로 Publisher 인터페이스를 적용하지 않은 상태인 것 같아서요.궁금하여 질문 남깁니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
.ifPresent 사용법
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]멤버 삭제 기능을 만들려고 하는데 이렇게 하는게 맞을까요?한개의 멤버만 받아서 삭제하고 싶은데 어떻게 처리해야 할까요? public boolean deleteProduct(String productName){ List<Product> result = em.createQuery("select p from Product p where p.productName = :productName", Product.class) .setParameter("productName", productName) .getResultList(); return true; } getResultList 로 하니까 여러개 나올거 같은데 한개만 삭제하려면 어떻게 해야 하나요? 그리고 em.remove하면 되나요?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
ReentrantLock과 비관적락
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.실무에서 DB 관련 데이터에 대해 동시성 이유가 있으면 비관적락을 쓰는것으로 알고 있습니다. JPA의 비관적락은 DB 계층에서 동기화 기술이고 ReentrantLock은 어플리케이션 계층의 동기화 라는데...실무에서 ReentrantLock은 언제 사용이 되나요?? ReentrantLock을 사용하면 DB 접근 동기화가 되지 않나요?? 둘의 명확한 차이점이 궁금합니다.