묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
메서드 문제 질문
마지막 내용에서 switch 문에서 case 4일떄는 break 하면 다시 while 문으로가서 return 으로 하셔아한다고 하셨는데 else if 문으로 코딩했을경우는4일떄 return 으로 하던 break 로 하던 둘다 종료가 됩니다 어떤 개념을 빠트렸을까요 ?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
일대일 양방향 연관관계에서 N+1 문제
엔티티 연관 관계Recruitment <(1)---(1)> Study 엔티티 코드@Entity public class Recruitment { @Id @GeneratedValue @Column(name = "recruitment_id") private Long id; @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id") private Study study; }@Entity public class Study { @Id @GeneratedValue @Column(name = "study_id") private Long id; @OneToOne(mappedBy = "study", fetch = FetchType.LAZY) private Recruitment recruitment; } 질문Recruitment 를 조회하고 Study 프록시 객체에 접근할 때, Recruitment 조회 쿼리가 한 번 더 나가는 이유를 모르겠습니다. (자세한 내용은 아래 코드의 주석으로 추가했습니다.) 테스트 코드 @Test @Transactional void test() { Study study = new Study(); study.setTitle("스터디A"); studyRepository.save(study); Recruitment recruitment = new Recruitment(); recruitment.setStudy(study); recruitment.setTitle("스터디A의 모집공고"); recruitmentRepository.save(recruitment); entityManager.flush(); entityManager.clear(); // ---------------------// Recruitment findRecruitment = recruitmentRepository.findById(1L).get(); // Recruitment 조회 System.out.println("findRecruitment.getStudy() start"); Study findStudy = findRecruitment.getStudy(); System.out.println("findRecruitment.getStudy() end"); System.out.println("findStudy.getTitle() start"); String title = findStudy.getTitle(); // Study 지연로딩만 나갈 것으로 예상했지만, Recruitment 조회도 발생함 System.out.println("findStudy.getTitle() end"); }SQL 로그select r1_0.recruitment_id, r1_0.id, r1_0.title from recruitment r1_0 where r1_0.recruitment_id=? // "findStudy.getTitle() start" (Study 지연 로딩) select s1_0.study_id, s1_0.title from study s1_0 where s1_0.study_id=? select // Recruitment 조회 로직이 왜 또 나가는가? r1_0.recruitment_id, r1_0.id, r1_0.title from recruitment r1_0 where r1_0.id=? // "findStudy.getTitle() end"
-
해결됨Do it! 알고리즘 코딩테스트 with JAVA
스택문제 백준 1874
강의내용의 코드가 헷갈려서 아래내용대로 수정해보았는데 이렇게 해도 될까요 ? public static void main(String[] args) {Scanner sc = new Scanner(System.in);int N = sc.nextInt(); // 수열의 개수int A[] = new int[N]; // 수열을 저장할 배열// 데이터 입력for (int i = 0; i < N; i++) {A[i] = sc.nextInt();} Stack<Integer> stack = new Stack<>();StringBuffer bf = new StringBuffer(); // 연산 출력 저장 int num = 1;for (int i = 0; i < N; i++) {int su = A[i];while (su >= num) { // 현재 수가 스택의 수와 같거나 큰 경우stack.push(num++);bf.append("+\n");}if (stack.isEmpty() || stack.peek() != su) {System.out.println("NO");return;}stack.pop();bf.append("-\n");} System.out.println(bf.toString()); // 결과 출력}}
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
public void findAll() 부분에서 맨마지막줄에 숫자를 멀넣어도 오류가 안뜨는데 왜그런가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
createMember 테스트코드
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]회원 웹 기능 - 등록 강의영상을 보다가 질문이 생겼습니다. 강의에서 get 주소에서 html 페이지로 멤버 이름을 받고 post로 이름을 넘기는 로직같은 경우, 실무에서는 어떻게 테스트 코드를 작성하나요? html까지 포함해서 동작하는 걸 확인할 수 있는 방법이 있나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
안녕하세요. 코테 플랫폼 질문드립니다.
코드 제출하고 Submitting에서 넘어가지 않으면 시간초과인가요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
궁금한 부분이 있습니다.
안녕하세요 강사님 저는 현재 코드로 시작하는 자바 첫걸음을 수강중인데요.섹션1의 다운로드 소스 코드 실행 방법을 수강해서 직접 실습해보았는데 계속 importing으로만 뜨고 설치가 안되드라구요 ㅠㅠ 윈도우라서 그런걸까요???
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
[수정 요망] orderList.html 코드 문제발생
관련링크입니다.https://www.inflearn.com/course/lecture?courseSlug=%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-JPA-%ED%99%9C%EC%9A%A9-1&unitId=24311&tab=community&category=questionDetail&q=1109808해당 질문의 답변입니다. {T(jpabook.jpashop.domain.OrderStatus).values()}OrderStatus가 item에 담겨져 있네요{T(jpabook.jpashop.domain.item.OrderStatus).values()}로 바꿔보시죠pdf상에서 코드나 주의 표시로 해당 사항을 넣어주셨으면 좋겠습니다. 해당 오류때문에 너무 많은시간을 소비하였습니다. ㅜㅜ
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
마지막 출력코드에서 sum변수를 지정하는이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.package Scanner; import java.util.Scanner; public class ScannerWhile2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("두 수 모두 0이라면 프로그램을 종료합니다."); while(true){ System.out.print("첫 번째 숫자를 입력해 주세요 : "); int num1 = scanner.nextInt(); System.out.print("두 번째 숫자를 입력해 주세요 : "); int num2 = scanner.nextInt(); if (num1 == 0 && num2 ==0) { System.out.println("프로그램을 종료합니다."); break; } System.out.println("두 수의 합은 : "+ num1 +num2); } } }에서 마지막코드에 바로 num1+num2값이아닌sum함수로 묶어서 따로 출력코드를 입력하신이유가 나중에 return값을 고려하셔서 그런건가요?
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
Pessmistic Lock 획득 순서가 보장되는지 궁금합니다
안녕하세요 강사님.다름이 아니라 Pessmistic Lock 획득을 요청한 쓰레드 순서가 쓰레드1, 쓰레드2 쓰레드3이고 이때 쓰레드1이 먼저 락을 획득한 후 락을 해제하면,먼저 요청한 쓰레드2가 락을 반환한받는지 궁금합니다.제가 gpt 및 postgresql, spring data jpa 공식문서를 검색했을 땐, 락 획득 요청대로 락 획득 순서가 보장된다는 내용은 없었어서,혹시 이부분에 대해 알고계신지 궁금하여 질문 올립니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Member - Order 연관관계
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Member와 Order의 연관관계에서 가급적 단방향을 사용하라고 하셨는데,1: 특정 Member의 주문목록을 확인할 때는 Member 엔티티에서 별도의 orders라는 List를 만들지 말고 Order들에서 특정 Member를 가진 객체를 찾는 방식으로 접근하는게 좋다는 말씀으로 이해해도 괜찮을까요?2: 그렇다면 order - orderItem - item 의 경우 다대다 관계를 특정 테이블을 추가로 생성해서 일대다 다대일로 연관관계를 설정했는데, 이때도 단방향으로 유지하는게 좋은걸까요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
개발환경설정 강의 실습 중 실행오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]맥북에 인텔리제이를 설치하고 jdk를 다운로드 받은 후에 new file로 파일을 만들어서 샘플 코드를 실행하였는데 Error: Could not find or load main class MainCaused by: java.lang.ClassNotFoundException: Main 이와 같은 메세지가 뜨며 실행 오류가 생깁니다. 강의와 똑같이 따라가며 실습했는데 혹시 원인이나 해결방법을 알 수 있을까요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
entity 필드의 접근 제한자를 private으로 줘야 하는 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.영한님 안녕하십니까. jpa 공부하면서 프로젝트 진행 중에 문제가 있어 질문 드립니다.entity의 경우 필드값을 private 접근 제한자를 줘야 하는 이유가 있을까요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
for 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]왜 for문 가운데에 ;을 빼면 이상하게 작동되나요?여기서 ; 이 무엇을 뜻하는 지 알려주실 수 있나요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
continue 질문
if와 continue 사이에 왜 i++을 하나 더 추가 해야 하나요??지우고 실행해보니 이상하게 뜨네요 ㅠㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
고아객체..이해가안되요
cascadeType.ALL 로 했을때부모엔티티 삭제하면 당연히 자식도 다 삭제되자나요?그런데 orphanRemoval = true가 왜 필요한가요?어차피cascadeType.ALL 로 하면 부모가 사라졌을때 자식도 다 삭제되는데..
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
500에러가 떠요 컨트롤러 잘 작성하고 index파일로 잘 연결한거같은데
(사진)
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
주문 조회V3 에서 쿼리가 4개 나온다고 하는데, 2개만 나옵니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. @GetMapping("/api/v3/orders") public List<OrderDto> orderV3() { List<Order> orders = orderRepository.findAllWithItem(); for (Order order: orders) { System.out.println("order ref = " + order + " id = " + order.getId()); } List<OrderDto> result = orders.stream() .map(o -> new OrderDto(o)) .collect(Collectors.toList()); return result; } ... public List<Order> findAllWithItem() { return entityManager.createQuery( "select o from Order o" + " join fetch o.member m" + " join fetch o.delivery d" + " join fetch o.orderItems oi" + " join fetch oi.item i", Order.class) .getResultList(); }이렇게 한 다음 v3 에게 요청을 넣었습니다.그 결과selecto1_0.order_id,d1_0.delivery_id,d1_0.city,d1_0.street,d1_0.zipcode,d1_0.status,m1_0.member_id,m1_0.city,m1_0.street,m1_0.zipcode,m1_0.username,o1_0.order_date,oi1_0.order_id,oi1_0.order_item_id,oi1_0.count,i1_0.item_id,i1_0.dtype,i1_0.name,i1_0.price,i1_0.stock_quantity,i1_0.artist,i1_0.etc,i1_0.author,i1_0.isbn,i1_0.actor,i1_0.director,oi1_0.order_price,o1_0.statusfromorders o1_0joinmember m1_0on m1_0.member_id=o1_0.member_idjoindelivery d1_0on d1_0.delivery_id=o1_0.delivery_idjoinorder_item oi1_0on o1_0.order_id=oi1_0.order_idjoinitem i1_0on i1_0.item_id=oi1_0.item_idorder ref = jpabook.jpashop.domain.Order@801a84d id = 1order ref = jpabook.jpashop.domain.Order@7be83ead id = 2 다음과 같은 SQL 쿼리를 보냈구요.그런데 4개가 아니라 2개라서 문의를 드립니다. 그런데 H2 DB에서 해당 쿼리를 입력하면 4개가 잘나옵니다.또한 포스트맨으로 받은 요청도 2개가 출력됩니다.[ { "orderId": 1, "name": "userA", "orderDate": "2024-03-18T23:29:35.545094", "orderStatus": "ORDER", "address": { "city": "서울", "street": "1", "zipcode": "11111" }, "orderItems": [ { "itemName": "JPA1 Book", "orderPrice": 10000, "count": 1 }, { "itemName": "JPA2 Book", "orderPrice": 20000, "count": 2 } ] }, { "orderId": 2, "name": "userB", "orderDate": "2024-03-18T23:29:35.555094", "orderStatus": "ORDER", "address": { "city": "부산", "street": "2", "zipcode": "22222" }, "orderItems": [ { "itemName": "Spring1 Book", "orderPrice": 20000, "count": 3 }, { "itemName": "Spring2 Book", "orderPrice": 40000, "count": 2 } ] } ]어떠한 것이 잘못되었는지 궁금합니다.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
반환값(RETURN) 에 대한 질문
제가 Return 부분에서 이해가 잘 안되서 그러는데return을 쓰면 main 영역에서 명령을 수행하다가 return으로 돌아가는 건가요? 그 설명해주신 호텔 전화번호로 다시 설명 해주실 수 있나요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
엔티티매니지먼트팩토리 생성질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]수업내용에서 엔티티매니저팩토리는 생섭 비용이 많이 들어서 애플리케이션에 보통 한 개만 생성한다고 하셨는데persistence.xml 파일에 엔티티매니저팩토리를 하나만 생성해야 한다는 의미 인가요?