inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

스레드 강의 질문이 있습니다.

해결됨

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

1) main, Thread-A, Thread-B 3개의 스레드를 만들고 실행시킨 후 main 스레드에서 의도적으로 exception을 발생시켜도 main 스레드만 종료되고 Thread-A, Thread-B는 돌아가는데 이 때 자바 자체를 중지하려면 Thread-A와 B를 Daemon으로 생성하는 방법 밖에 없을까요? 2) 궁금증이 발생했는데 main 스레드를 Daemon으로 선언할 수 있나요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
index 댓글 1 좋아요 0 조회수 163

연관관계 질문

미해결

비전공자도 이해할 수 있는 DB 설계 입문/실전

안녕하세요 강의 잘 듣고 있어요 다 들으면 도움이 많이 되고 설계가 재밌어 질 거 같습니다. 궁금한 점은 두 엔티티 A, B의 관계를 파악할 때 무조건 처음에 하나의 A, 하나의 B 이렇게 하나의를 붙히고 생각하면 될까요? 아니면 여러개의 A 이렇게도 생각 할 수도 있을 거 같아서요

  • mysql
  • dbms/rdbms
  • database
  • dba
hoonseung 댓글 1 좋아요 0 조회수 212

강의를 보고 연습 코드를 짜봤는데용... 잘 짠지 모르겠습니다.

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

우선 책과 카테고리 관계는 다대다 매핑이니 중간테이블로 책카테고리라는 엔티티를 뒀습니다. Ex) 연관관계 예시 [책] : "해리포터" <-> [카테고리] : sf, 소설 [책] : "아이언맨", "해리포터" <-> [카테고리] : sf public class Book { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "book_id") private Long id; private String title; } public class BookCategory { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "book_category_id") private Long id; @ManyToOne @JoinColumn(name = "book_id") private Book book; @ManyToOne @JoinColumn(name = "category_id") private Category category; public class Category { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "category_id") private Long id; private String categoryName; @OneToMany(mappedBy = "category", cascade = CascadeType.ALL, orphanRemoval = true) private List<BookCategory> bookCategories = new ArrayList<>(); } @Transactional public void createBook(BookDto dto) { Book book = new Book(); book.setTitle(dto.getTitle()); bookRepository.save(book); List<Category> categories = dto.getCategories(); for (Category category : categories) { BookCategory bookCategory = new BookCategory(); bookCategory.setBook(book); bookCategory.setCategory(category); category.getBookCategories().add(bookCategory); categoryRepository.save(category); } } 테스트 해 본 결과, 원하는 대로 나오는 거 같은데 CategoryRepository에는 id name 1 소설 2 Sf 3 소설 이런 식으로 저장되더라구요... 이러면 CategoryRepository에 의미없는 데이터만 저장되는 거 같은데 잘 짠 거 맞나요?

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
댓글 1 좋아요 0 조회수 146

17분대 실행시 Member Table을 찾을수 없다는 오류가 나요

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이것 저것 찾아봤는데, 같은 에러가 반복적으로 발생하네요. 무엇이 문제인지 모르겠습니다 ㅠㅠ 회원 가입 부분을 Run 할때 발생하고있네요.

  • java
  • spring
  • mvc
  • spring-boot
정연규 댓글 2 좋아요 0 조회수 189

IntelliJ 에서 클래스 생성시 Exception 생성 기능

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 영한님처럼 클래스 생성시 Exception이 따로 안떠서 어떻게 하면 Exception도 클래스나 인터페이스처럼 바로 생성하는 기능을 추가할 수 있는지, 단순 버전 차이인지 궁금합니다. (2번째 사진은 제가 클래스 생성할 시 뜨는 창입니다.)

  • java
  • 네트워크
  • 객체지향
qkrwlsgh98 댓글 1 좋아요 0 조회수 211

타입 이레이저 동작방식 질문입니다!

미해결

김영한의 실전 자바 - 중급 2편

안녕하세요! 이번에 정처기 문제에서 타입 이레이저 관련 문제가 나왔는데, 궁금한 점이 생겨서 질문 올려봅니다. class Printer { void print(Integer a) { System.out.print("A" + a); } void print(Object a) { System.out.print("B" + a); } void print(Number a) { System.out.print("C" + a); } } public class Gisafirst { public static void main(String[] args) { new Container<>(0).print(); } public static class Container<T> { T value; public Container(T t) { value = t; } public void print() { new Printer().print(value); } } } 제가 이해한 바로는, 강의에서 설명해주신대로 new Container<>(0) 에서 public static class Container<Integer> { Integer value; public Container(Integer t) { value = t; } public void print() { new Printer().print(value); } } 컴파일러가 컴파일 시점에 이렇게 이해하고 나서 컴파일 종료 후, 타입 소거가 일어나서, Object로 변환한다고 이해했습니다. 그래서 print 메서드를 호출할 때 value는 Object 타입이므로 B0가 출력되는 것이죠. 여기서 궁금한 점은 바로 print의 오버로딩 메서드 선택 시점입니다. 제가 찾아본 바로는 오버로딩 메서드 선택시점은 컴파일 단계에서 이루어진다로 알고있습니다. 그렇다면 동작방식이 컴파일 종료 후 타입 소거가 일어나는게 아니라, 정확히는 "컴파일 시작 - 타입 소거 - 오버로딩 메서드 선택 - 컴파일 종료 - 런타임" 이런식으로 일어나는건가용? 아니면 어디서 오해하고 있는지 궁금합니다!

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
  • 타입이레이저
  • 제네릭
댓글 1 좋아요 0 조회수 191

영상 실행이 안됩니다

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 패키지 정리 영상부터 다음 영상 모두가 재생이 안됩니다

  • java
  • 객체지향
댓글 4 좋아요 0 조회수 279

해시 충돌에 대해서 질문이요

해결됨

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 궁금증이 생겨서 질문을 올립니다. 해시 리스트? 를 만들고, 데이터를 넣다 보면 어쩔 수 없이 해시 충돌이 일어날 수 밖에 없을것 같은데요. 여기서 질문이 생깁니다. 영한님이 쓰신 대로 링크드 리스트를 이용해서, 해시 리스트를 만들었다고 치고 데이터를 넣다 보니, 해시 충돌이 여러 번 일어나는 경우가 생겼습니다. 여기서 해시 충돌이 몇번 일어 나는게, 최악의 상황인가요? 캐파시티를 40개 로 해 놓고, for문으로 8만개의 숫자를 넣어보니 사진처럼 나오던데요. (제컴 기준 i3, 렘16기가) 즉 질문은 해시 충돌을 계속 일으켜야 하는 상황 이라면, 해시 충돌을 몇 번 일으 키는게 메모리 상? 안전한가요? 답변 부탁 드립니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
생각하는자 댓글 1 좋아요 0 조회수 193

service에 dto 전달

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

안녕하세요!! service 메소드 호출 파라미터 관련 질문드립니다 saveMemberV2()에서 request.getName()으로 받은 이름을 member객체에 set 해주고, 이 member를 memberService.join()에 파라미터로 넘겨주는 방식인 것 같은데, memberService.join에 request를 통으로 넘겨서 , 이후 join 메소드에서 member.setName(request.getName()) 후 처리하는 방식 은 사용하면 안되는 것인가요? 후자를 이용한다면 memberSerive.join의 파라미터도 Member 타입에서 CreateMemberRequest로 바꾸고요...!!

  • java
  • spring
  • spring-boot
  • jpa
김지호 댓글 1 좋아요 0 조회수 264

질문

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 송아지 찾기 ch = new int[10001]; 10001 로 선언하는 이유가 확실히 이해가 가지 않아요... 범위가 1부터 10000인데 왜 ch 배열의 크기는 10001로 설정하셨나요...?ㅠㅠ 감사합니다.

  • java
  • 코딩-테스트
제비꼬리 댓글 1 좋아요 0 조회수 116

팝잇콘이 안 뜹니다

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 내용 14분 대에서 하신 것처럼 localhost:8080으로 들어갔는데, 에러메시지는 제대로 뜨지만 팝잇콘이 강사님의 말씀처럼 뜨지 않습니다 ㅜㅠㅜㅜ 뭐가 잘못된 걸까요?

  • java
  • spring
  • mvc
  • spring-boot
hheothh3656 댓글 2 좋아요 0 조회수 201

스프링 부트와의 강의 순서 질문

미해결

토비의 스프링 6 - 이해와 원리

안녕하세요, 토비님. 저는 Spring 과 Java로 개발을 했었으나 좀 까먹은 상태고, 이번에 하면서 스프링에서 말하는 DI, AOP, Spring Application Context 등 여러 개념을 한번에 이해하고 넘어가고 싶습니다. 업무에 사용할 예정은 Spring 3.X 대의 최신 버전입니다. 이런 상태에서 토비의 스프링 부트와 토비의 스프링 6이 둘 다 있는데 어떤 것부터 들으면 좋을까요?

  • java
  • spring
공공수달 댓글 2 좋아요 0 조회수 394

static2.ex 문제1번 질문

미해결

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 첫번째 사진과 정답 코드를 비교했을때 ============[정답코드] ============ public Car(String name) { System.out.println("차량 구입, 이름: " + name); this.name = name; totalCars++; } =============================== this.name = name; 없이도 코드가 실행이 잘되는 이유를 알고 싶습니다.

  • java
  • 객체지향
자바공부하는러버덕 댓글 1 좋아요 0 조회수 171

index.html 에 질문있습니다!

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요 선생님 도서관리 앱을 만드는 과정을 모두 영상과 함께 코딩하여 완성하고 나니 문득 궁금한 점이 생겼습니다. 지금 여기에는 회원등록, 도서 등록, 도서 대출, 도서 반납, 상단에는 목록보기 정도가 있는데 선생님이 만들어 놓으신 버튼 이외에 다른 버튼을 제가 더 추가 해 더 완성도 높은 도서관리 앱으로 공부해서 만들어 보고 싶다면 HTML은 어디서 수정을 해야 하나요? v1/index.html 파일에서 할 수 있나요?? 몹시 궁금해서 여쭤봅니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
하민철(Mincheol) 댓글 1 좋아요 1 조회수 123

StepVerifier를 이용한 Testing (1) - expectNoEvent 에 관해서

해결됨

Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부

안녕하세요! 강의 잘 듣고 있습니다. 다름이아니라 section10.class01.StepVerifierTimeBasedTestExample04 여기서 expectNoEvent 이 오퍼레이터가 시간을 기다려 주는 기능을 한다 이렇게 이해했는데 제가 조금 커스텀해서 찍어보다 보니 작동 방식이 도저히 이해가 되지 않아서 질문 남겼습니다. 아래 코드 처럼 1분마다 emit되는 예제에서 중구, 서초구는 1분씩 기다렸으니 순서대로 나오는게 맞는데 그 다음은 2분을 기다렸으니 강동구가 나와야 할 것 같았는데 강서구가 나오더라고요. expectNoEvent라는 오퍼레이터가 가지는 의미를 어떻게 이해야 할지 도저히 감이 안잡힙니다...ㅠ [전체코드(테스트성공)] public class StepVerifierTimeBasedTestExample04 { @Test public void getCOVID19CountTest() { StepVerifier .withVirtualTime(() -> TimeBasedExample.getVoteCount( Flux.interval(Duration.ofMinutes(1)) // 1분마다 data를 emit ) ) .expectSubscription() .expectNoEvent(Duration.ofMinutes(1)) // 1분동안 아무런 이벤트가 발생하지 않음 .expectNext(Tuples.of("중구", 15400)) // 첫번째 튜플 .expectNoEvent(Duration.ofMinutes(1)) .expectNext(Tuples.of("서초구", 20020)) .expectNoEvent(Duration.ofMinutes(1)) .expectNoEvent(Duration.ofMinutes(1)) .expectNext(Tuples.of("강서구", 32040)) .expectNoEvent(Duration.ofMinutes(1)) .expectNextCount(2) .expectComplete() .verify(); } } [getVoteCount 함수] public static Flux<Tuple2<String, Integer>> getVoteCount(Flux<Long> source) { return source .zipWith(Flux.just( Tuples.of("중구", 15400), Tuples.of("서초구", 20020), Tuples.of("강서구", 32040), Tuples.of("강동구", 14506), Tuples.of("서대문구", 35650) ) ) .map(Tuple2::getT2); }

  • java
  • spring
  • project-reactor
  • webflux
이동기 댓글 1 좋아요 2 조회수 255

질문

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 11분17초경에 나오는 while2_3 코드변경문제 질문입니다 while문 맨 끝에 i++;를 작성하지 않으면 i <= endNum을 정의해도 무한루프?로 실행이 되던데 왜 그런지 알 수 있을까요?

  • java
  • 객체지향
whydoubleon 댓글 1 좋아요 0 조회수 168

16:50부분에서 타입락 질문드립니다.

미해결

자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]

ResourceA의 methodA메서드가 호출될때 ResourceA.cass락이 1번쨰로걸리고 ResourceB.class락이 두번째로 걸리고나서 ResourceB.class락이걸린상태에서 resourceB.methodB2()메서드가 호출되는데 resourceB.methodB2()메서드 내부에서 ResourceB.class락으로 컨트롤 하고있는데 ResourceA의 두번째 락에서 ResourceB.class로 락을 반환하지않은상태에서 실행된다고 생각하는데 resourceB.methodB2()의 내부는 어떻게 실행되는걸까요? 정리 methodA()ResourceA1번째락 > ResourceA.cass methodA()ResourceA2번째락 > ResourceB.cass ResourceA2번째락내부에서 resourceB.methodB2()실행 resourceB.methodB2()내부는 ResourceB.cass락 질문사항 methodA()ResourceA2번째락에서ResourceB.cass을 점유하고있는데 resourceB.methodB2()도 ResourceB.cass락으로 블록락 실행중인데도 불구하고 점유 가능한 이유가 무엇인가요?

  • java
  • 동시성
  • multithread
  • synchronisation
ultimates 댓글 2 좋아요 0 조회수 131

엔티티 매니저 초기화 방법 질문입니다

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

@Repository public class MemberRepository { @PersistenceContext private EntityManager em; } @Repository @RequiredArgsConstructor public class MemberRepository { private final EntityManager em; } 안녕하세요 엔티티매니저 초기화 방법에 대해 질문드리고 싶습니다. DB 2편 데이터 접근 활용 기술에서는 후자의 방법으로 초기화하셨고 이번 강의에서는 전자의 방법으로 초기화 하셨는데 검색해보니 @RequiredArgsConstructor 가 아닌 @PersistenceContext 를 사용하라는 글이 있던데 몇년 된 게시물들이었고 최근에는 @RequiredArgsConstructor 를 사용해도 괜찮다는 게시글도 봤습니다 결론적으로는 둘 다 사용해도 괜찮은지 아니면 둘 중 추천하시는 어노테이션이 있는지 그리고 둘의 차이가 궁금합니다

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
skkud.inflearn1 댓글 1 좋아요 0 조회수 167

안녕하세요 질문 있습니다!

해결됨

실습으로 배우는 선착순 이벤트 시스템

현재 카프카로 데이터를 보내기전에 redis를 사용하여 발급된 쿠폰 개수에 대한 동시성 처리를 해서 개수에 대한 검증 로직이 있다고 앞서 강의에서 얘기를 하셨습니다. 그러면 발급된 쿠폰 개수가 100개 되고 난 이후의 요청은 그냥 무시하면 되나요? 쿠폰이 천개, 만개 이렇게 매우 많다면 쿠폰 발급에 대한 요청을 바로 DB에 저장을 하면 DB에 부하가 심해져서 카프카를 도입해 이러한 부하를 낮춘다고 이해를 했습니다. 궁금한 점은 DB에 대한 부하를 낮춰도 이벤트 시기에 수많은 사용자들의 요청으로 인해 서버 자체에 대한 부하는 굉장히 심할꺼 같은데 서버에 대한 부하를 낮추는 방법은 없나요? 현재 흐름이 쿠폰 요청 -> 서버 -> reids에서 쿠폰 개수 확인 -> 카프카 -> 컨슈머 -> DB 인데 이러한 흐름을 요청 -> 서버 -> 카프카 -> 컨슈머 -> redis에서 쿠폰 개수 확인 -> DB 이렇게 바꾸는 방식은 어떤지 궁금합니다. 이런식으로 하면 서버쪽에서 카프카로 데이터를 비동기로 전송한다면 서버 자체에도 부하가 낮아지지 않을까 라는 생각이 들어서 여쭤 봅니다. redis streams나 래빗엠큐 같은 다른 기능들도 있는데 Kafka를 사용하신 이유가 궁금합니다. 만약 쿠폰 발급이 100개처럼 적게 발급하는 시스템이라면 굳이 카프카를 도입을 할 필요가 없는건가요? publisher가 카프카로 데이터를 보내면 consumer가 바로 받아와서 DB에 처리를 하면 안되겠죠? 이렇게 처리를 하면 바로 DB에 저장을 하는 상황이니 DB에 부하가 심해진다고 생각합니다. 현재 강사님이 알려주신 코드를 바탕으로 시스템을 구축하고 여기에 부하 테스트를 한다고 했을때 어떤 식으로 단계를 잡아서 부하 테스트를 하면 좋을지 조언을 해주실 수 있을까요 한번에 너무 많은 질문해서 죄송합니다.

  • java
  • docker
  • spring-boot
  • kafka
  • redis
감바스 댓글 1 좋아요 0 조회수 319

교안으로만 공부해도 충분할까요?

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

팬심 또는 언젠간을 위해 강의를 전부 구매했습니다. 구매 후 기본편 까지는 강의를 다봤거든요. 그런데 교안을 너무 잘만드셔서 교안만 봐도 될꺼같다 라는 생각이 들더라구요. 물론, 강의를 진득하게 듣고 이해하여, 그것을 체화하면 자바에 대해 더 깊게 이해할 수 있겠지만, 문제는 역시 트레이드오프... 시간이 너무 많이 걸리네요. 자바 고급 2편까지 1달 반에서 2달 내로 끝내고 싶은데 강의를 들으면 도저히 그 시간을 맞출 수 없을꺼같아서 질문해봅니다. 제목 그대로 교안만으로도 충분할까요?

  • java
  • 네트워크
  • 객체지향
ym Kim 댓글 2 좋아요 0 조회수 257

인기 태그

인프런 TOP Writers

주간 인기글