묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
검은 화면
몇몇 강의가 검은 화면에서 목소리만 나오는데 왜이런건가요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
31강 UserServiceV2 오류
31강에서 BookService 클래스에 강의와 똑같이 코드를 작성하였는데 실행하면 UserServiceV2 오류가 발생합니다.UserRepository의 Optional<User> 형식을 받지 못해서 생기는 오류인 것 같은데, 어떻게 수정해야 하나요?error: incompatible types: Optional<User> cannot be converted to UserUser user = userRepository.findByName(name);^UserServiceV2.java @Transactional public void deleteUser(String name) { //SELECT * FROM user WHERE name = ? User user = userRepository.findByName(name); if (user == null) { throw new IllegalArgumentException(); } userRepository.delete(user); }BookService.java@Transactional public void loanBook(BookLoanRequest request){ //1. 책 정보 가져오기 Book book = bookRepository.findByName(request.getBookName()).orElseThrow(IllegalArgumentException::new); //2. 대출 기록 정보 확인하여 대출 중인지 확인 //3. 대출 중이면 예외 발생 if(userLoanHistoryRepository.existsByBookNameAndIsReturn(book.getName(), false)){ throw new IllegalArgumentException("진작 대출되어 있는 책입니다."); } //4. 유저 정보 가져오기 User user = userRepository.findByName(request.getUserName()) .orElseThrow(IllegalArgumentException::new); //5. 유저 정보와 책 정보 기반 UserLoanHistory 저장 userLoanHistoryRepository.save(new UserLoanHistory(user.getId(), book.getName())); }UserRepository.javapackage com.group.libraryapp.domain.user; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface UserRepository extends JpaRepository<User, Long> { Optional<User> findByName(String name); }우선 오류를 없애기 위해 UserRepository에서 Optional을 빼고 null처리를 하도록 수정하였는데, 실행 시 오류는 없지만 웹UI로 테스트하면 서버 내부 오류가 발생했다고 뜹니다. 어떻게 수정해야 제대로 처리되는지 모르겠습니다. 추가로 이렇게 수정하였을 때, 이후 코드를 작성할 때 Optional 형식이 아니어서 발생하는 다른 오류가 없는지도 궁금합니다.UserRepository.javapackage com.group.libraryapp.domain.user; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface UserRepository extends JpaRepository<User, Long> { User findByName(String name); }BookService.java@Transactional public void loanBook(BookLoanRequest request){ //1. 책 정보 가져오기 Book book = bookRepository.findByName(request.getBookName()).orElseThrow(IllegalArgumentException::new); //2. 대출 기록 정보 확인하여 대출 중인지 확인 //3. 대출 중이면 예외 발생 if(userLoanHistoryRepository.existsByBookNameAndIsReturn(book.getName(), false)){ throw new IllegalArgumentException("진작 대출되어 있는 책입니다."); } //4. 유저 정보 가져오기 User user = userRepository.findByName(request.getUserName()); if(user == null){ throw new IllegalArgumentException(); } //5. 유저 정보와 책 정보 기반 UserLoanHistory 저장 userLoanHistoryRepository.save(new UserLoanHistory(user.getId(), book.getName())); }UserServiceV2.java @Transactional public void deleteUser(String name) { //SELECT * FROM user WHERE name = ? User user = userRepository.findByName(name); if (user == null) { throw new IllegalArgumentException(); } userRepository.delete(user); }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
안녕하세요. 이 로드맵 과정은 스프링 부트를 주로 활용하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) - 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) - 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 아니오[질문 내용]여기에 질문 내용을 남겨주세요. 제가 친형걸로 이걸 들으려고 하는데 이 로드맵 전반적인 과정은 스프링인지 스프링부트인지 알고 싶어서 이렇게 질문드립니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
39:33 res 리턴값
너무 잦은 질문 죄송합니다.몇번을 돌려봐도 리턴이 헷갈리네요 재귀함수를 통해 int res = 15 를 구한다음메인함수에 int sum=nSum(n)에 들어 가는거 같은데res가 갑자기 nSum에 리턴이 되는걸 어떻게 이해해야 될지 모르겠습니다. 첫번째 호출->자기자신 호출까지는 이해했는데결과값이 리턴하는 순서? 공식?이 잘 정립이 안되네요 ㅠㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
영속성 컨텍스트 스냅샷 갱신 시점
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]flush()를 할 때 영속성 컨텍스트 스냅샷이 갱신되는 지 확인받고 싶습니다. 다른 질문에서 해당 내용을 찾지 못했고, Baeldung과 같은 사이트, 또는 다른 블로그 글들에서 이와 같은 내용을 확인할 수 있는 곳이 없어 ChatGPT를 통해 확인했지만, 여전히 확신이 서는 곳에서 답변을 받은 것이 아니기에 질문 남겼습니다.다음과 같은 코드를 실행할 때,EntityTransaction tx = em.getTransaction(); tx.begin(); // id는 1L, name은 AAA인 Member 엔티티 Member memberA = new Member(1L, "AAA"); em.persist(memberA); em.flush(); memberA.setName("NOTA"); tx.commit();flush를 직접 호출하는 시점은 영속성 컨텍스트에는 memberA에 대한 엔티티는 있지만 스냅샷은 없는 상태로, flush()가 수행되면서 데이터베이스와의 동기화를 위해 INSERT 쿼리문이 날라갑니다.제가 생각하기에는 이 때(첫번째 flush()), memberA에 대한 스냅샷이 생성되어야 memberA.setName()을 수행하면서 변경감지를 통해 비교할 대상인 스냅샷이 존재할 수 있다고 생각합니다.그렇기에 commit()을 호출할 때, flush()가 자동으로 호출되면서 비교할 스냅샷을 통해 UPDATE 쿼리문을 생성할 수 있다고 생각했습니다.이를 통해 제가 확인하고 싶은 것은 다음 2가지인데, 맞는지 확인 부탁드립니다.flush() 호출 시 영속성 컨텍스트에서 스냅샷이 갱신된다.persist() 시에는 스냅샷이 생성되지 않는다.관련 자료를 확인하고 싶은데 혹시 이를 확인할 수 있는 자료가 있다면 알려주시면 감사하겠습니다.강의 잘 보고 있습니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 서버가 로컬에 뜬다는 건 자바 JVM 안에서 뜬다고 보면 될까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 인텔리제이로 화살표를 눌러서 스프링 애플리케이션 서버를 실행한다는 것은, 자바 JVM 내부에서 스프링 서버가 뜨는거라고 생각하면 되려나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
DB 서버에 “소켓”으로 접근한다는 게 어떤 의미일까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.순수 JDBC 강의까지 듣고 질문이 생겨 올립니다~DB커넥션을 얻어 애플리케이션이 DB 서버에 "소켓"으로 연결된다고 하는데, 이 의미가 "네트워크 상에서 돌아가는 두 개의 프로그램 간 양방향 통신" 을 할 수 있게 소켓이라는 통(?)이 생겨서 연결된다고 보면 되려나요? 그리고, application.properties에 url에 jdbc:h2:tcp://localhost/~/test이렇게 적으면 소켓 연결이라고 하셨는데 이 url에 대한 더 자세한 이해를 하고 싶은데 이 url이 정확히 어떤 의미일까요? tcp는 OSI 7계층에서 어렴풋이 들어온 용어 같습니다.
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
비밀번호 변경 로직 질문있습니다.
updatePassword 메서드에서는 인코딩을 해주지 않으셨는데 이러면 DB에 plaintext가 들어가게되는거 아닌가요 public void updatePassword(Account account, @Length(min = 8, max = 50) String newPassword) { account.setPassword(passwordEncoder.encode(newPassword)); accountRepository.save(account); } 시큐리티6.x 버전이라 그런지 인코딩을 하지않으면 애초에 비밀번호 변경후 로그인이 되지 않습니다.(위는 수정한거)
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
[12:42] 구두 설명과 pdf 설명이 다른 부분의 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.[12:42]에서 "main 스레드는 TIMED_WATING 상태에서 RUNNABLE 상태로..." 설명과 함께 마우스 포인터로 가리키신 pdf 에서는 work 스레드 라고 표기되어 있습니다. 설명에 혼란이 있어서 제가 인터럽트 호출 부분을 다음과 같이 이해한 게 맞는지 확인 부탁드립니다..!0. work 스레드 동작main() 스레드 안에서 thread.start(); 호출(work 스레드 호출)한다.1. main() 스레드 동작Thread.sleep(4000)을 호출하여 TIMED_WAITING 상태로 들어간다. (4초 대기)2. thread.interrupt() 호출4초 뒤 main() 스레드가 깨어나고(RUNNABLE 상태), 바로 아래 코드인 thread.interrupt() 호출한다. -> 이때 work 스레드는 Thread.sleep(3000)으로 인해 TIMED_WAITING 상태였는데, main() 스레드의 인터럽트 신호로 인해 InterruptException이 발생하여 RUNNABLE 상태로 즉시 변경된다.3. InterruptException 처리work 스레드는 catch 블록에서 InterruptException 예외 처리 수행한다. 인터럽트 호출했다고 InterruptException 예외가 반드시 나는 것은 아니다. 설명에서 InterruptException 예외 발생한 이유는 main() 스레드에서 4초 대기 후 work() 스레드 인터럽트 호출할 때, work 스레드 상태가 TIMED_WAITING 였기 때문이다. work 스레드는 인터럽트 호출로 인해 TIMED_WAITING -> RUNNABLE 상태로 즉시 변경되고, work 스레드의 인터럽트 상태는 초기화 되어 false를 반환한 것이다.이렇게 이해하면 될까요..?!
-
미해결실전! 스프링 데이터 JPA
DTO반환에 대한 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.JPA활용2편과 JPA 데이터 강의를 보면 DTO를 직접 반환하는 부분에서 질문드립니다.강의 수강이전에 repository에서 가져온 Entity를 직접조회하여 가져온 값을 service계층에서 lombok의 builder어노테이션을 이용하여 DTO형태로 직접조립하여 클라이언트에게 반환하는 API를 주로 구성했습니다. 근데 실무에서는 주로 위와 같은 방법이 아니라 repository계층에서 DTO를 직접 불러와서 조립하는 방식을 선호되나요?
-
미해결실습으로 배우는 선착순 이벤트 시스템
쿠폰 발급 개수 제한
쿠폰을 100개까지만 발급하고 싶으면 조건이 count >= 100 return이 맞지 않을까요?
-
미해결김영한의 실전 자바 - 중급 1편
상속 오버라이딩 질문
[질문 내용]여기에 질문 내용을 남겨주세요. 7:36에서 obj1, obj2를 출력하는데, obj1, obj2의 객체 정보가 출력이 되었는데,이유가 메인메서드 처음부분에, obj1과 obj2의 객체가 만들어 지는데, 이때 obj1의 객체 안에는(obj1, Object)클래스 정보가들어있고 obj2객체 안에는(obj2, Object)클래스정보가 들어있는데 System.out.println()메서드 안에 객체를 넣으면 내부에서 자동적으로 객체명.toString()메서드가 실행이 되는데, 자식클래스(obj1, obj2)모두가 toString()을 오버라이딩 하지 않아, Object의 toString()이 호출이 되는데, 호출하는 변수가 각각 obj1, obj2여서 호출하는 변수 타입의 객체 정보가 출력이 된다. 맞나요? 잠시 헷갈렸는데 맞을까여?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
오류
A problem occurred configuring root project 'hello-spring'.> Could not resolve all artifacts for configuration 'classpath'. > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.4.1. Required by: root project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.4.1 > Dependency requires at least JVM runtime version 17. This build uses a Java 8 JVM.* Try:> Run this build using a Java 17 or newer JVM.> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.> Get more help at https://help.gradle.org.Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.For more on this, please refer to https://docs.gradle.org/8.11.1/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.인텔리제이에서 open 폴더로 hellospring 열었는데 해당 오류가 뜨네요 이거 뭔가요?
-
미해결김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
큐가 비어있는 상황에서 큐에 새로운 작업이 들어왔을 때, 기본 스레드와 초과 스레드 중 어느 스레드 부터 작업을 실행하는지 궁금합니다!
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요."초과 스레드가 작업을 처리할 때 마다 시간은 계속 초기화된다" 7:36초에 말씀을 해주셨는데, 한가지 궁금한 점이 생겨 질문 드립니다! 큐가 가득 차서 초과 스레드가 이미 만들어 졌다고 가정한 상황입니다. 이후에 작업이 없어서 큐가 비어있다고 가정을 하겠습니다.즉, 상황은 큐가 비어있고, 스레드 풀에 기본 스레드 2개, 초과 스레드 2개가 있습니다. 이 때, Executors 에 새로운 작업이 들어오면 이 작업은 무조건 기본 스레드가 초과 스레드 보다 먼저 작업을 수행하게 되나요?만약, 기본 스레드가 먼저 작업을 무조건 수행하게 된다면 이는 BlockingQueue의 내부 구현인 ReentrantLock 과 Condition 으로 인해 WAITING인 기본 스레드 부터 깨우게 되는 것인가요?
-
미해결김영한의 실전 자바 - 중급 1편
단축키 질문
[질문 내용]여기에 질문 내용을 남겨주세요. 강의 볼 때마다 신기한 단축키를 잘 사용하시던데, 전 단축키가 잘 안외워지는데 부럽네요.. 단축키 유용한거는 어떻게 알아가는건가요,, 강의는 다 잘 이해되서 큰 문제는 아닌거같은데, 단축키 잘 쓰시는게 넘 부럽네여..
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
프로필 수정 처리 merge 질문입니다.
강의 잘 듣고있습니다. 현재 service단의 update메서드에는 merge로 병합처리를 하고있지만 accountRepository에서 findById와 같이 수정할 account객체를 찾아내서 영속화를 시켜준뒤에 수정을 하면 dirty checking으로 인한 수정법이 더 안전한 방법일까라고 생각이되서 질문드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JRE 버전 문제
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]안녕하세요, 강의 너무 잘 보고 있는 취업 준비생입니다 !인텔리제이를 사용하며 강의를 따라가는 중인데, 윈도우 cmd에서 실행 시 하단 사진처럼 뜨더라고요찾아보니 jre의 버전 문제라고 하는데, UnsupportedClassVersionError 라는 오류라고 하더라고요컴파일된 클래스 파일이 현재 사용중인 jre 버전보다 더 최신 버전으로 컴파일되었다고 하는데, 이것을 해결할 방법이 있을까요 ? 혹은 해결하지 않고 이 버전을 유지하며 이번 강의 내용은 머리로만 이해하는 것이 좋을지 궁금합니다.해결에 도움이 될 수 있을까 하여 구체적인 오류를 남깁니다 !Exception in thread "main" java.lang.UnsupportedClassVersionError: com/example/demo/DemoApplication has been compiled by a more recent version of the Java Runtime (class file version 67.0), this version of the Java Runtime only recognizes class file versions up to 66.0at java.base/java.lang.ClassLoader.defineClass1(Native Method)at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1023)at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)at java.base/java.net.URLClassLoader.defineClass(URLClassLoader.java:524)at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:427)at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:421)at java.base/java.security.AccessController.doPrivileged(AccessController.java:714)at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:420)at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:592)at org.springframework.boot.loader.net.protocol.jar.JarUrlClassLoader.loadClass(JarUrlClassLoader.java:107)at org.springframework.boot.loader.launch.LaunchedClassLoader.loadClass(LaunchedClassLoader.java:91)at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)at java.base/java.lang.Class.forName0(Native Method)at java.base/java.lang.Class.forName(Class.java:529)at java.base/java.lang.Class.forName(Class.java:508)at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:99)at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:64)at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:40) 현재 이렇게 실행하니 8080 서버는 들어가지는 것 같은데, hello 라는 부분 클릭 시 넘어가질 않네요 .. 추가로, 실행한 파일을 종료할 때 ls -arlth 라는 것을 입력하시던데, 이 명령어가 종료 명령어가 맞을까요 ..?거북이 마음으로 하나씩 의문들을 해결해나가겠습니다 좋은 강의 제공해주셔서 항상 감사드립니다 !!
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
실제 Socket 통신을 시도했지만 되지 않습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 영한님, 같이 개발 공부하는 친구와 함께 영한님 예시 코드로 서로 채팅이 되는지 확인하고 싶어 친구의 IP 주소를 받아 서로간 실행을 해보았습니다.통신이 될거란 기대와 다르게 Operation timed out 오류만 뜨게 되었습니다.방화벽 문제인가 싶어 양쪽 컴퓨터의 방화벽을 잠시 끈 상태에서 다시해보아도 같은 오류가 뜨고, 서버쪽 프로그램을 실행하지 않고 클라이언트 프로그램만 실행시켜 connection refuesed 오류를 확인했지만 동일하게 Operation timed out 오류가 떴습니다. 무엇이 문제일까요?
-
미해결김영한의 실전 자바 - 기본편
객체를 잘 이해한것인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]student1 = new Student(); 이런 식으로 객체를 만들게되면 student1에 Student의 형식에 맞춘 새로운 공간을 할당하고 주소를 배정한다고 이해해도 되는걸까요?
-
미해결실전! 스프링 데이터 JPA
fetch join 시 countQuery
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]22:00 @Query어노테이션안에 countQuery는 안넣고 그냥 @Query("select m from Member m left join fetch m.team t")으로만 썻는데 count쿼리가 join을 하지 않고 나가는데 이것도 하이버네이트가 버전 업 되면서 최적화 된거라고 봐도 좋을까요? 내용 추가합니다 ! left fetch join은 데이터의 수가 원래것보다 더 많아지지 않아서 left fetch join이든 left join이든 둘다 count할때는 join하지 않는건가요?