inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

안녕하십니까 기선님!!!!! webclient와 비동기관련 질문요청드립니다

미해결

스프링 부트 개념과 활용

안녕하십니까. 기선님처럼 되고싶은 1년차 주니어 개발자입니다. 제 개인 프로젝트 중에 현재는 동기방식 restTemplate으로 한번에 여러 군데에 요청을 던지는 기능이 구현되어 있는데 일부 요청이 오래 걸리는 것들이 있어서 스레드를 오래 물고있다는 판단을 하여 해당 기능을 nio 방식으로 전환하려고 합니다.(webclient) 웹서버는 io/nio모두 지원하는 undertow를 사용하고 있으며, 스프링 mvc를 사용하고 있습니다. 본론으로 제가 해당 프로젝트에 한번 외부로의 요청에 각각 응답시간이 다른 여러곳에 일부는 오래걸리는 요청을 던지기 위해 비동기 처리로 수정하여 개발하려고 하는데, @Async나 CompletableFuture말고 webflux를 추가하여 mvc+webflux의 형태로 개발해도 괜찮을지 여쭤보고 싶습니다.(이게 개인 프로젝트가 아닌 실무에서도 가능할지) webflux와 mvc를 같이 쓰면 않좋다는 이전 토비님 말씀과 예전 구글링 글들도 있지만, 제 개인적인 생각에는 undertow는 예전 3.0 서블릿과는 다르게 io/nio를 함께 처리해주기 때문에 webflux + mvc 두개를 같이 써서 필요한 부분에 비동기 처리중에서도 pub/sub구조와 backpressure가 구현되어 있는 webflux-reacotr를 일부 도입해도 괜찮지 않을까하여 여러곳들을 전전하며 찾아보고 있었습니다. 제 부족한 실력으로는 어깨너머로 알게된 지식으로 스스로 원하는 결론을 그냥 내린것 같은 생각이 강하게 들고, 마땅한 결론에 도달하지 않아서 여쭙고싶습니다!!!!!

  • spring-boot
  • java
  • spring
댓글 1 좋아요 0 조회수 1566

unable: to acces jarfile target/*.jar

미해결

예제로 배우는 스프링 입문 (개정판)

java -jar target/*.jar 이 실행되지않아 target파일로 들어간뒤에도 실행되지않아 전체이름을 다 쳤더니 실행되었습니다. 왜 *가 먹히지 않았던걸까요?

  • spring
  • java
미로 댓글 3 좋아요 3 조회수 484

repository는 entity당 개별로 생성해줘야 하나요?

미해결

실전! 스프링 데이터 JPA

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의내용을 보면 Member와 Team 엔티티가 있고 JpaRepository를 상속받은 repository 또한 각각 만들어져 있습니다. 단순한 조회는 이미 정의되어있는 메소드로 가능하지만, 다른 테이블(엔티티)와 조인하는 경우에는 직접 정의해서 사용 가능하다는 내용의 강의였는데요 그럼 만약 4개 5개 복잡한 엔티티들과 연관된 쿼리들을 정의하고 싶다면 어느 repositroy에 정의를 해야할지 고민입니다. 여러 엔티티를 1개의 repository로 관리하고자 해도, 상속받을때 <>속에 특정 엔티티를 넣어줘야하는데, 그럼 어떤 엔티티를 넣어야할까요? 코딩에 정답은 없겠지만은 실무에서는 관례쩍으로 어떤식으로 구현을 하는지 궁금합니다.

  • spring
  • JPA
  • java
  • spring-boot
koon0312 댓글 1 좋아요 0 조회수 1088

대상 테이블에 외래키 의 단점

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

member table만 조회해서 locker값이 있는지 없는지를 모릅니다. 그래서 locker table까지 조회를 해야합니다. 그래서 지연로딩이 불가하고 즉시로딩만 됩니다. 그런데 이렇게 따지면 주테이블에 외래키를 넣어도 locker table만 조회해서는 member값이 있는지 없는지를 모르지 않나요? member table까지를 확인해봐야 아는거잖아요

  • JPA
  • java
김민지 댓글 2 좋아요 0 조회수 591

@joincolumn name 속성

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

1. team에서는 멤버변수가 member클래스고 joincolumn의 name속성은 team_id잖아요 @joincolumn(name = "team_id") private List<Member> members = new ArrayList<>(); 왜 member_id가 아니라 team_id인건가요?

  • java
  • JPA
김민지 댓글 4 좋아요 1 조회수 958

AOP 적용 질문

해결됨

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

안녕하세요 AOP 중 궁금한점이 생겨 질문드립니다! [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 질문을 쭉 봤는데 해당 내용이 없었습니다. 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네 [질문 내용] 이부분에서 찍어보면 다음과 같이 EnhancedBySpring~ 이부분이 스프링이 AOP 를 처리하기 위해 프록시로 복제된 객체로, AOP를 사용하게되면 사용된다는 내용으로 이해했습니다. 강의 자료에 보면, 다음과 같은 내용이 있는데, AOP와 관련된 코드들 (예제에서는 시간을 측정하는 코드, 시간측정하는 클래스를 주입하는 코드)을 제거 한 후에도 MemberController 에서 Service 클래스를 sout 으로 찍어볼 경우, 똑같이 EnhancedBySpring~ 하는 객체가 찍혀 나옵니다. 이 부분이 위에 AOP 적용 전 그림 에서 진짜 객체들만 사용한다는 위 그림과 과 맞지 않는데, 그렇다면 Spring 에서는 AOP 관련된 코드가 없어도 자동적으로 AOP를 위해 프록시 객체를 사용하도록 강제(?) 처리 되는건지 궁금합니다.

  • aop
  • spring
  • MVC
  • java
  • spring-boot
Space 댓글 3 좋아요 0 조회수 694

선생님 질문이 있습니다!

미해결

실전! 스프링 데이터 JPA

안녕하세요! 강의 재밌게 수강하고 있습니다! 실례가 안 된다면 혹시 선생님께서 말씀하시는 핵심 비즈니스 로직과 화면 혹은 API에 맞춘 로직의 차이점을 간단하게 설명해주실 수 있으실까요? 저는 화면에 출력하거나 API를 만드는 게 곧 핵심 비즈니스 로직이라고 생각했는데 제가 잘못 생각하고 있었던 거 같아 혹시 도움을 받을 수 있을까 하여 질문 남기게 됐습니다 ㅠ + Trade off는 어떤 의미로 이해하면 좋을까요? ㅠㅠ P.S 비전공자로 여러 강의를 들으면서 선생님 강의 만난 게 최고의 행복인 거 같습니다! 종종 PPL 하시는 JPA 책도 잘 읽고 있는데 언젠가 기회가 되면 선생님께 싸인 받고 싶습니다 ㅋㅋㅋ 존경합니다 선생님!

  • spring
  • spring-boot
  • JPA
  • java
한코딩 댓글 1 좋아요 0 조회수 231

채점중에서 넘어가지 않습니다.

미해결

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

챕터1에 5번문제를 제출하였는데 채점중에서 넘어가지 않고있습니다. 코드가 잘못된건가요? 확인 좀 부탁드립니다.

  • java
  • 코테 준비 같이 해요!
댓글 1 좋아요 0 조회수 166

app-plain.jar의 역할

미해결

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

안녕하세요, 수강 중에 궁금한 점이 있어 질문드립니다. :) 스프링 부트 프로젝트를 ./gradlew build 명령어로 빌드를 하고 나면, hello-plain.jar와 hello.jar의 두 개의 jar 파일이 생성됩니다. 구글링을 해 본 결과, 스프링 부트에서 빌드하면 Plain Archive도 함께 만들어지며 이를 방지하고 싶으면 build.gradle에 별도의 설정을 하면 되는 것, 그리고 Plain Archive가 무엇인지도 알게 되었습니다. 그런데 Plain Archive는 어디에 쓰려고 만들어진 건지, 목적이 무엇인지를 모르겠습니다. 의존성이 포함되지 않은 파일이 왜 필요한 건가요?

  • java
  • spring-boot
  • MVC
  • spring
나인간 댓글 2 좋아요 0 조회수 667

select절 서브쿼리 tuple에서 읽는방법

미해결

실전! Querydsl

안녕하세요 영한님. 밑에 비슷한 질문이 있었는데 해결이 되지않아 질문드립니다. // 모든이름과 평균나이 출력 QMember memberSub = new QMember ( "memberSub" ) ; List < Tuple > result = queryFactory .select (member . username , JPAExpressions . select ( memberSub. age .avg ()) .from ( memberSub ) ) .from (member) .fetch () ; for ( Tuple tuple : result ) { System. out .println ( tuple.get (member . username )) ; System. out .println ( tuple.get ( 1 , Double. class )) ; } 강의에서 코드인데요 여기서 평균나이값을 tuple에서 뽑고싶어서 tuple.get(memberSub.age.avg()) 로 뽑아봤는데 값이 null이 나옵니다. 그래서 현재는 Index와 클래스로 뽑긴했는데 member.username처럼 바로뽑는법이 있을까요? 항상 감사합니다.

  • java
  • JPA
심모 댓글 3 좋아요 0 조회수 788

entitygraph관련 궁금증

미해결

실전! 스프링 데이터 JPA

안녕하세요!! 만들어주신 로드맵을 열심히 공부하고 있는 학생입니다! @entityGraph와 관련하여 추가적인 궁금증이 있어 질문드립니다. 먼저 해당 내용에 대해 repository 내에서 findAll() 메소드를 상속받아, 여기에 fetch join을 부여해 주는 것으로 이해했는데요 혹시 이렇게 상속받으면 findAll 메소드 자체가 바로 fetch join을 진행하는것이 아닐까 해서요 예를 들어 A 위치에서는 member의 변수만을 필요로 하고, B 위치에서는 team까지 가져오려 하면 A에서는 LAZY로 유지되는 것이 좋고, B에서는 바로 fetch join하는 것이 나을 거라 생각하는데 위의 방식이면 둘 다 바로 fetch join을 진행할 것 같다고 생각하는데 이게 맞을까요?? 혹시 맞다면 어떤 식으로 고치는것이 더 최적화될지 궁금합니다.... --- 추가로 혹시 @entityGraph는 무조건 left outer join에서만 적용되는 것일까요??

  • spring
  • JPA
  • java
  • spring-boot
댓글 1 좋아요 0 조회수 228

Order 생성 메서드

해결됨

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

안녕하세요 Order 생성 메서드를 setter없이 작성해봤는데 올바르게 작성했는지 궁금해서 질문드립니다. 강의코드 /** * 생성 메서드 */ public static Order createOrder (Member member , Delivery delivery , OrderItem... orderItems) { Order order = new Order() ; order.setMember(member) ; order.setDelivery(delivery) ; for (OrderItem orderItem : orderItems) { order.addOrderItem(orderItem) ; } order.setStatus(OrderStatus. ORDER ) ; order.setOrderDate(LocalDateTime. now ()) ; return order ; } 제가 작성한 setter를 사용하지 않은 생성 메서드 public Order (Member member , Delivery delivery , LocalDateTime orderDate , OrderStatus status) { this . member = member ; this . delivery = delivery ; this . orderDate = orderDate ; this . status = status ; } public static Order createOrder (Member member , Delivery delivery , OrderItem... orderItems) { Order order = new Order(member , delivery , LocalDateTime. now () , OrderStatus. ORDER ) ; for (OrderItem orderItem : orderItems) { order. orderItems .add(orderItem) ; } return order ; } 이렇게 작성했습니다. 올바르게 작성했는지 궁금합니다.

  • spring
  • JPA
  • spring-boot
  • java
  • 웹앱
조윤호 댓글 1 좋아요 0 조회수 340

member는 생성 메서드를 만들지 않은 이유가 있나요?

해결됨

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

member는 생성 메서드를 따로 만들지 않고 그냥 MemberRepository에서 저장, 조회를 했는데 Order와 OrderItem에만 생성 메서드를 만들어줬나요? 단지 단순한 로직(다른 엔티티에서 값을 가져와서 처리하는 비즈리스 로직이 없어서)이라서 Member 엔티티는 생성 메서드를 만들어 주지 않은 건가요?

  • 웹앱
  • JPA
  • spring
  • java
  • spring-boot
조윤호 댓글 1 좋아요 0 조회수 352

@Path variable로 Id를 받을 때 궁금증

미해결

실전! 스프링 데이터 JPA

강의를 듣다가 궁금한게 생겼는데요 Id 같은 PK의 경우에 좀 중요한 정보라고 생각을 합니다. 사용자 입장에서는 자동적으로 매겨진 pk인 id를 모르겠지만 이것을 사용자 측에서 저장하고 server와 주고 받는것이 맞는건지 궁금합니다. 공부를 하는 입장이라 실무에서는 어떤 방식으로 사용자 정보를 조회하도록 하는지가 너무 궁금합니다. ID정도는 넘겨줘도 상관이 없는건가요? 아니면 이러한 정보를 절대 전송하면 안되고 매번 session에서 꺼내야 하는건가요? cookie 에서 이 값을 저장해도 무방한가요? 무엇이 나은가요? ㅠㅠ cooki Id

  • java
  • spring-boot
  • spring
  • JPA
seonjun Moon 댓글 1 좋아요 0 조회수 738

gradle 설정관련 질문입니다.

미해결

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 맞습니다 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 네 없는 네용입니다. 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 전부 확인했습니다. [질문 내용] 안녕하세요. 선생님의 강의를 보면서 스프링을 배워가는 학생입니다. 처음 인텔리제이와 gradle 설치 이후 sdk관련된 gradle 싱크 문제로 큰고생 후 이제 설정이 완료되었다고 생각했는데 저는 선생님처럼 gradle 칸을 열어도 dependency 부분이 보이지 않습니다. 또한 hello-spring.build부분도 색깔로 처리되어서 메소드등이 인식되는것이 아니라 회색 밑줄로만 표시되는데요 이부분도 제대로된 세팅법을 알고 싶습니다. 기본적인 세팅부분인지라 질문에 등록되지 않았던 부분인것 같은데 해결책을 알 수가 없네요..

  • 스프링
  • MVC
  • gradle
  • spring
  • java
  • java
  • setting
  • spring-boot
gyumcho1224 댓글 4 좋아요 1 조회수 880

PathVariable의 대한 검증

해결됨

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

안녕하세요 영한님. 수정 혹은 삭제 시 pathvariable을 사용해서 처리를 했었는데요. 이 강의를 보고 조작의 위험성에 대해서 고민이 되었습니다. 실제 사용자가 해당 리소스에 대한 권한이 있는지 체크해야 한다 라고 말씀하셨는데요. 예제의 내용으로 보안을 해야 한다면 itemId와 사용자 Id로 상품 조회 후 결과 값이 있으면 해당 리소스에 대한 권한이 있는 사용자로 판단 고로 수정 혹은 삭제가 가능으로 처리 하면 되겠습니까?? 그리고..수정은 주로 PutMapping을 사용하는데 예제에서는 PostMapping을 사용하셨더라구요. 이건 영한님의 개인 취향 일까요?? 아니면 PutMapping을 안쓰시는 이유가 있으면 알려주십시아. 질문 다시 정리하자면. 1. pathvariable로 수정, 삭제 시 가장 좋은 검증 방법 2. PutMapping 혹은 DeleteMapping에 대한 영한님의 의견을 듣고 싶습니다. 코로나 조심하세요. 영한님. 항상 좋은 강의 감사합니다 !

  • spring
  • java
  • spring-boot
  • 웹앱
  • JPA
Aura 댓글 1 좋아요 2 조회수 703

자바에서 valid하는 것과 JS로 valid하는 경우

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 자바에서 valid하는 것과 JS로 valid하는 경우 커스터마이징이 JS가 좀더 쉬워보이는데 자바로 하는게 더 효율적인가요??

  • spring-boot
  • 웹앱
  • spring
  • JPA
  • java
박주영 댓글 1 좋아요 0 조회수 236

JAVA에 ContentBean의 content_data가 int형이여도 되는이유가 뭔가요

미해결

윤재성의 만들면서 배우는 Spring MVC 5

안녕하세요. 현재 강의에서 XML, JAVA 모두 kr.co.softcampus.beans 패키지 안에 ContentBean.java 클래스에서 content_data변수를 String으로 사용하고 있습니다. 하지만, java프로젝트에서 String이 아니라 int로 설정하여도 작동되어서 문의드립니다. 왜 그런가요? XML의 경우는 안된다고 나옵니다.(당연히..)

  • MVC
  • java
  • spring
  • XML
it 댓글 1 좋아요 0 조회수 213

getter setter 인텔리제이에서 만드는 법

미해결

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

안녕하세요. getter setter를 만들려고 했는데 alt+Insert를 해도 generate에 test와 copyright만 뜨고 다른게 뜨지를 않습니다. 이럴땐 getter setter를 어떻게 만들어야 할까요 ㅠㅠ.. 구글링을 해봐도 모두 generate를 누르면 다 getter setter 탭이 뜨는데 인텔리제이 사용이 처음이라 어렵네요 ㅠㅠ..

  • gettersetter
  • java
  • MVC
  • spring
  • spring-boot
지향 댓글 2 좋아요 0 조회수 1870

메모리 데이터 조회 예제를 해보고 있는데 폼 데이터를 하나 더 추가하니 조회가 안됩니다.

미해결

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

안녕하세요. 회원 목록 Memory 에 저장하는거를 토대로 그냥 시간, 할 일 데이터를 받아와서 출력하는 예제를 해보고 있습니다. ( 수업 때 진행하셨던 부분을 토대로 한거라 구조는 같은데 Model에 date,work 가 저장되어 변수 하나 더 추가해서 해보는 중입니다. ) - 날짜, 할 일을 입력 받는 것까지 되는거는 확인 했습니다. - 1 을 보시면 아시다 싶이 id 값은 출력이 됩니다. 그런데 date 와 work 로 설정해놓은 데이터들이 출력이 안됩니다. 소스파일은 zip 파일로 묶어서 구글드라이브에 올려놨습니다. ( https://drive.google.com/file/d/1aTSxDKgxCr-do_l9oV0zNX3NTc7jDfRN/view?usp=sharing ) 한번 확인 가능하시면 어떤 부분을 놓치고 있는 것인지 조언 부탁드립니다.

  • spring
  • java
  • spring
  • java
  • spring-boot
  • MVC
준준 댓글 2 좋아요 0 조회수 327

인기 태그

인프런 TOP Writers

주간 인기글