묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
로드맵 선택에 있어서 질문드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]김영한선생님 로드맵이 jpa로드맵이랑 스프링로드맵이 있는걸로 알고있는데 두개의 로드맵을 다 들으면 좋겠지만 빠르게 취준을 하고싶은 욕심 때문에 두개의 로드맵 중 하나만 듣고 취업준비를 하고싶습니다. 어떤 로드맵이 더 취준용으로 좋을지 추천 받고 싶습니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
assertThat을 사용할때 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]처음 강사님께서 save 메서드에서는 @Test public void save(){ Member member = new Member(); member.setName("Spring"); repository.save(member); Member result = repository.findById(member.getId()).get(); Assertions.assertThat(member).isEqualTo(result); }처럼 assertThat(member) 를 넣고 그 다음 isEqualTo(result)를 넣어 사용하셨는데,이후에 findByName 에서는@Test public void findByName(){ Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); Member result = repository.findByName("spring2").get(); Assertions.assertThat(result).isEqualTo(member1); }이처럼 result가 먼저 나오고 그 다음 member를 넣어 사용하십니다.혹시 무슨 차이일까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
섹션 4. API 개발 고급 - 컬렉션 조회 최적화 - 주문조회 V3
섹션 4. API 개발 고급 - 컬렉션 조회 최적화 - 주문조회 V3 수강 중에 질문 있어 글 남깁니다. 현재 스프링 부트 3.0.11 자바 17버전인데 강의에서는 findAllWithitem()에서 select에 distinct를 붙이지 않을 경우 총 네개의 Order가 생겼습니다. 패치 조인으로 인해 두개씩 생성되었기 때문에.하지만 저의 경우에는 distinct를 붙이지 않아도 두개의 Order가 생겼습니다. 혹시 스프링 버전 업에 따른 변경사항 일까요? 아니면 제가 코드를 잘못 친걸까요? 사진 첨부 하겠습니다.@GetMapping("/api/v3/orders") public List<OrderDto> ordersV3() { 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 em.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(); }[ { "orderId": 1, "name": "userA", "orderDate": "2024-01-07T04:02:33.369413", "orderStatus": "ORDER", "address": { "city": "서울", "street": "1", "zipcode": "1111" }, "orderItems": [ { "itemName": "JPA1 BOOK", "orderPrice": 10000, "count": 1 }, { "itemName": "JPA2 BOOK", "orderPrice": 20000, "count": 2 } ] }, { "orderId": 2, "name": "userB", "orderDate": "2024-01-07T04:02:33.427993", "orderStatus": "ORDER", "address": { "city": "대구", "street": "2", "zipcode": "2222" }, "orderItems": [ { "itemName": "SPRING1 BOOK", "orderPrice": 30000, "count": 3 }, { "itemName": "SPRING2 BOOK", "orderPrice": 40000, "count": 4 } ] } ]
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
hello-spirng-0.0.1-SNAPSHOT.jar가 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.java jdk 버전 확인 21gradle 버전은 8.5입니다.빌드 설치 후 jar 실행하면 안되네요.다른 질문에 답변으로 환경변수 설정이 있길래 링크에 적힌 대로 다시 다 확인했는데도 안됩니다. 혹시 다른 방법이 있을까요?https://minstar0410.tistory.com/3
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
Scanner 파트에서 ScannerWhileEx3 변수 할당 관련
안녕하세요. 처음에int input = 0;여기서 변수를 선언하고 0으로 할당까지 했는데왜 input = scanner.nextInt(); 으로 다시 할당하는지 궁금합니다. 다시 할당하는 이유가 따로 있는 건가요?할당을 두 번씩 해도 괜찮은 건가요? 이미 비어있던 공간에 0이 들어가 있는데.. 코드가 잘 돌아가는거 보면 괜찮은거 같긴 한데 이해가 잘 안됩니다. int input = 0;을 지우고int input = scanner.nextInt(); 로 코드를 수정한 것도 잘 돌아가긴 하구요. java로 코딩 처음 배우는 왕왕초보입니다.왕초보 기준으로 설명해 주실 수 있을까요??ㅜㅜ
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행버튼
프로젝트 생성 강의 따라하는 과정에서 main 메서드 실행하려는데 실행버튼이 활성화 되지 않습니다java 17.0.9 , springboot 3.2.1 로 설치했는데저는 setting 화면부터 뭔가 다른 분들과 다르게 나오네요비슷한 질문 찾아봐도 저같은 케이스는 안보여서 질문남깁니다 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jar 실행이 안 돼요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]gradlew.bat, gradlew build까지는 완료했습니다.그런데 jar 실행만 하면은 아래와 같은 에러가 뜹니다 ㅠㅠ Error: LinkageError occurred while loading main class org.springframework.boot.loader.launch.JarLauncher java.lang.UnsupportedClassVersionError: org/springframework/boot/loader/launch/JarLauncher has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
양방향 관계에서
Member와 Team의 관계인 조건에서팀을 바꾼 다는 가정하에 Member의 TeamId 값을 바꿔보려고 코드를 구현 해봤는데생각하는대로 되지 안더군요. 어떻게 해야 하나요?Member findMember = em.find(Member.class, 3L); findMember.getTeam().setId(2L); tx.commit();Member에서 TeamId의 원래의 값이 1에서 2로 변경 하고자 하는 코드 입니다.업데이트 쿼리가 찍히지 않습니다. 도와주시면 감사하겠습니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Map이 뭘까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.제가 자바 로드맵을 5%남기고 전부 들었는데, 남아있는 강의에도 Map에 대한 강의는 없었는데, 이후에 추가되는것일까요?
-
미해결김영한의 실전 자바 - 기본편
static method의 저장 위치에 관한 질문입니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]자바 메모리 구조에 관한 질문입니다!static method는 method 영역의 static 영역에서 static 변수와 함께 관리되나요?그게 아니라면, class 영역에서 instance method와 함께 관리되는 것인지 궁금합니다.
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ArrayList
안녕하세요.ArrayList는 커리큘럼에 없었는데 실무에서 잘 안쓰이나요?코딩테스트에선 많이 쓰이는 것 같아 여쭤봅니다!
-
미해결스프링 시큐리티 OAuth2
21:22 redirect uri
redirect uri 에 관련해서, 저는 아래처럼 이해를 했어요. [ 이해한 내용]아래 두개 redirect uri는 동일해야함. authorization code 발급시, redirect uri 헤더access token 발급시 redirect uri 헤더1번은 redirect 받기 위함. 2번은 1번을 검증하기 위함 [ 궁금한 점 ] 키클록에 등록하는 redirect Uri는 또 뭔가요? 깃허브나 이런 다른 provider 들에 앱을 등록할 때도 redirect uri, 혹은 callback uri 가 있던데 무슨 용도일까요?
-
미해결스프링 시큐리티 OAuth2
7:30초 쯤 redirect uri 관련 질문 있습니다.
요즘 웹을 구성한다고 하면, react 진영의 Next.js 라는 서버사이드 렌더링 서버를 띄우는 경우가 많은걸로 아는데요. redirect uri 를 Nextjs 서버로 보내고, Nextjs 가 code를 스프링 서버로 다시 보내는 경우 어떻게 해야하나요? - code 요청에 들어가는 redirect uri 를, 프론트 서버로 지정함. - 나중에 access token 요청시 프론트 서버로 지정함. 이게 맞나요? 이 방향이 아니라, redirect uri를 스프링 서버로 받아버리면, 스프링 서버가 나중에 프론트 서버로 리다이렉트를 시킬수도 있을거 같은데요. 두 경우 모두, 스프링 서버쪽에서 프론트의 uri를 알아야하는 문제가 있는거 같은데, 다른 방식은 없나요? (스프링 서버쪽에 커스텀 헤더로, 프론트 서버가 알려주는 방식도 가능 할거같긴한데, 좋은 방법인지 모르겠네요)
-
해결됨자바 코딩테스트 - it 대기업 유제
혹시 이렇게 작성해도 괜찮나요?
코딩테스트 공부하면서 항상 궁금했는데..강의 내용을 보면 클래스나 함수는 꼭 필요한 부분에서만 사용하시는 것 같더라구요..아래처럼 써도 되나요? 면접관님들은 어떻게 생각하실지 궁금합니다. public static int[] run(int[] nums) { return Arrays.stream(nums) .mapToObj(MyNumber::new) .peek(user -> user.one = Integer.bitCount(user.value)) .sorted(Comparator.comparingInt(MyNumber::one)) .mapToInt(MyNumber::value) .toArray(); } public static class MyNumber { final int value; int one; MyNumber(int value) { this.value = value; this.one = 0; } int value() { return value; } int one() { return one; } }
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계 주인과 cascade가 상충되는 상황에 대해서
제가 알고 있기론 연관관계 주인만 엔티티 수정이 가능하고 아니면 조회만 가능하다고 알고 있습니다.@OneToMany(mappedBy = "team") private List<Member> members = new ArrayList<>();이 코드에서 team은 member을 조회만 할수 있습니다.Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); //역방향(주인이 아닌 방향)에서 멤버 추가 시도 team.getMembers().add(member); //실패! 그러나 cascade 또는 고아 객체 제거 옵션을 사용하면 부모 엔티티를 통해 자식 엔티티의 생명주기를 컨트롤 할 수 있다고 배웠습니다.@Entity public class Parent { @Id @GeneratedValue private Long id; @OneToMany(mappedBy = "parent", cascade = CascadeType.PERSIST) List<Child> childList = new ArrayList<>(); }Child child1 = new Child(); Child child2 = new Child(); Parent parent = new Parent(); child1.setParent(parent); //연관관계 추가 child2.setParent(parent); //연관관계 추가 parent.getChildList().add(child1); parent.getChildList().add(child2); //부모 저장, 연관된 자식들 저장 em.persist(parent); 두 개념이 서로 충돌하는것 같은데 어떻게 동작하는 것일까요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2에 테이블 생성이 안돼요...ㅠ
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]프로젝트 환경설정을 마치고 프로젝트를 돌려봤습니다.똑같이 따라하면서요.그런데 사진과 같이 create문까지 잘 나오는데 h2에 테이블이 안보여요문제가 뭘까요? ㅠㅠ 주의 사항도 다 보면서 버전업 시켰는데도 안되네요..하루종일 구글링하고 찾아봐도 모르겠어요 도와주시면 감사하겠습니다
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
단축키 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]선생님께서 알려주신 단축키들이 모두 유용해서 잘 사용하고 있습니다만 잘 되던 단축키가 안 될 때가 있습니다 ㅠ_ㅠCtrl + Shift + F10 누르면 실행이 되어야 하는데잘~ 되다가 갑자기 안 되고 윈도우 관련 치트키가 눌리는 것 같습니다.잘 되다가도 뭐가 꼬이는 건지 한 번 안 되기 시작하면 계속 안 되는데 잘 쓰던 단축키가 안 되니 좀 답답합니다ㅠㅠ제가 뭔가를 잘 못 누르는 걸까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
코틀린 사용자인데 강의 보면서 진행이 가능할까요?
코틀린으로 프로그래밍을 입문했습니다. 자바를 사용할 줄은 모르고 코틀린만 사용이 가능한 상황인데, 코틀린으로 공부가 가능한가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
TransactionContext 로그가 안 찍히는 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의 화면을 보면 TransactionContext 에서" Rolled baxk transaction for test : .."라는 로그가 있는데제 거는 안 찍히면 어떤 문제일까요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
자바란? 7분 컴파일, 디컴파일 질문있습니다
강사님께서 out 폴더에서 디컴파일된 결과를 보여주시고 그 다음에 컴파일 결과인(?) bytecode를 보여주셨는데 이 bytecode는 어디서 확인할 수 있는지 알 수 있을까요 ???