inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

Optional.ofNullable

해결됨

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

"회원 도메인과 리포지토리 만들기" 중 findById를 구현하실때 Null값 때문에 Optional.ofNullable 을 쓰셨다고 하셨는데 그냥 if문을 써서 Null이 아닐때 id를 return하고 아닐때 Null을 return하는 방식의 구현을 하면 안되는 건가요? 코드가 좀 더 지저분해져서 그런건가요? 제가 java 쪽은 아직 study를 하지 않아서 질문 설명에 조금 부족한 부분이 있네요.

  • Optional.ofNullable
  • spring
  • MVC
  • java
  • spring-boot
김주영 댓글 1 좋아요 0 조회수 320

jpa msa 에 대한 질문입니다!

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

안녕하세요 강사님! 강의 너무 재밌게 잘 보고있습니다! . 마이크로서비스 환경에선 jpa 연관관계 맵핑(@OneToMany, @ManyToOne...) 이런게 불가능할 것 같은데 그래서 설정을 하지 않으신건지 궁금합니다! 또한 마이크로 서비스에선 외래키같은 설정은 따로 안해줘도 되는건가요?!

  • Kafka
  • msa
  • JPA
  • spring-boot
  • spring-cloud
  • architecture
밥밥 댓글 1 좋아요 3 조회수 1054

5.2강의에서 if구문을 활용하여 짝수 골라내는 코드 답이 뭔가요

미해결

문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!

5.2강의에서 마지막에 내주신 과제 답이 뭔가요? if구문을 활용하여 짝수 골라내는 코드 답이 뭔가요 밑에와 같이 했습니다. 맞나요..? for v in range ( 50 , 100 ) : if v % 2 == 0 : print (v)

  • python
olel_olel 댓글 0 좋아요 1 조회수 287

cascade 질문입니다.

미해결

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

안녕하세요. CASCADE 옵션은 객체의 이점을 살려서 DB를 다룰 수 있는 점, 그리고 각각 persist/remove하는 것보다 편리하게 저장할 수 있다는 점에서 나름 이점이 있다고 생각됩니다. 강의를 보면서 몇가지 궁금점이 생겼는데 정리하여 질문드려요. <질문> 1. 실무에서는 사실상 데이터베이스의 데이터를 삭제하는 경우가 그리 많지 않았습니다. 그렇기에 특히나 cascade의 remove 옵션은 배제하는것이 더 좋지 않을까라는 생각이 드는데요. 이 또한 실무에서 사용을 자주 하는 편인가요? (물론 경우에 따라 다르다고 생각하긴 합니다) 2. 만약 cascade 옵션을 사용하는 경우가 있다면 persist도 자주 사용을 하는 편인가요? 3. 모든 엔티티를 cascade를 사용하지않고 직접 persist()를 통해 DB에 저장/삭제 시켜주는것이 좀 더 명시적이라고 생각됩니다. (관계 매핑 옵션을 확인하지 않고 실제 코드만 보고도 정확하게 하는 동작을 파악할 수 있기 때문에)이 부분에 대해서 영한님의 의견을 듣고 싶습니다. 모든 질문 실무에서의 경험을 섞어서 답변 주시면 감사하겠습니다!

  • JPA
  • java
pwn2own 댓글 4 좋아요 1 조회수 1287

queryDsl에서는 DATE 함수 지원 하지 않나요?

미해결

실전! Querydsl

SELECT * FROM member AS m INNER JOIN history AS h ON (m.id = h.id) WHERE DATE(h.created_at) = DATE_ADD(CURDATE(), INTERVAL -1 DAY) 해당 쿼리문을 만들어야 하는데요... 지금 까지 제가 해본 것 입니다!!!! 함수 () { LocalDate minusDays = LocalDate.now().minusDays(1); DateTemplate<LocalDate> localDateDateTemplate = Expressions.dateTemplate(LocalDate.class, "DATE({0},'%Y-%m-%d')", subQEmrConsultationHistory.createdAt, ConstantImpl.create("%Y-%m-%d")); BooleanBuilder booleanBuilder = new BooleanBuilder(); booleanBuilder.and(localDateDateTemplate.eq(minusDays)); return queryFactory .from(qhistory) .join(qhistory.member) .where(booleanBuilder) } 이렇게 한번 해보았는데 당연히 안되었네요... 이방법이 아닌거 같은데요... 이 경우 어쩔수 없이 Mybatis로 가야하나요....

  • JPA
  • java
리나 댓글 1 좋아요 0 조회수 5745

고급매핑 중 MappedSuperclass 를 질문드립니다.

해결됨

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

- 배경 1. @MappedSuperclass 예시 코드에는 create, update 정보만 있었지만, 저는 deleted (소프트 딜리트 플래그) 도 넣고 싶습니다. 2. deleted 는 검색이 필요하기에 객체 관계가 필요하고, 그렇기에 @MappedSuperclass 로 묶을 수 없다는 것을 인지했습니다. 3. 위 조건을 만족하기 위해서 @Entity 를 주면 해결이 되지만, 이 경우 매핑 정보 전달만을 위한 클래스가 테이블로 생성되어 버럽니다. - 질문 1. 현재는 뾰족한 방법을 찾지 못해 모든 테이블에 deleted 를 따로 만들어주고 있습니다. 공통적으로 관리할 수 있는 방법이 있을까요?

  • java
  • JPA
Byung Hyun Choi 댓글 1 좋아요 0 조회수 216

영속성 컨텍스트 쿼리 질문 드립니다.

미해결

실전! Querydsl

안녕하세요, 강의 잘 듣고 있습니다. 질문을 드리고 싶어서요. 영속성 컨텍스트에 엔티티A 가 있다고 가정해 볼게요. EntityManager의 em.find()를 통해 엔티티A를 조회하면, EntityManager는 영속성 컨텍스트에 있는 엔티티A를 반환하고, 실제 DB에 select 쿼리는 날리지 않는걸로 알고 있어요. 그런데 queryFactory는 생성자 인자로 EntityManager를 받고 있음에도, 왜 해당 강의 7분 21초에서는 select 쿼리가 나가나요?? queryDSL은 EntityManager 차원의 find 실행이 아니고, JPQL 차원의 쿼리 실행이라, 무조건 쿼리가 나가는 건가요??

  • java
  • JPA
taehee-kim-dev 댓글 1 좋아요 0 조회수 328

스냅샷이란..?

미해결

실전! 스프링 데이터 JPA

선생님 강의 정말 잘 듣고있습니다!! 선생님이 QueryHint에서 readOnly를 켜주면 " 스냅샷을 안찍죠 . . . " 이러셨는데 이떄 스냅샷이 JPA 영속성컨텍스트(1차캐시) 를 의미하는 건가요?

  • JPA
  • spring-boot
  • java
  • spring
임도현 댓글 1 좋아요 1 조회수 588

12 Factors

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

안녕하세요~ 좋은 강의 감사합니다~ 12 Factor내용을 보고싶어서 https://12factor.net/ko/ 사이트에 들어갔는데, 머릿말에서 소개하기를, SaaS앱을 만들기 위한 방법론이라고 소개하고 있습니다. 제가 인프라가 많이 부족하고 Spring Cloud가 어떤것인지 감도 안오지만, Image와 컨테이너를 사용하는 것으로 알고있고, 컨테이너를 사용해서 구축하는 아키텍는 IaaS로 알고있는데, 맞는 접근법인가요?

  • architecture
  • JPA
  • spring-boot
  • spring-cloud
  • Kafka
  • msa
Accidently Woo 댓글 1 좋아요 2 조회수 487

JPA, Hibernate, Spring Data JPA 의 차이점에 헤깔려서 질문올립니다!!

미해결

스프링 데이터 JPA

제가 이해한게 맞는지 여쭤보고 싶어서 질문을 남깁니다!! JPA 는 EntityManager 로 ORM 구현 Hibernate는 SessionFactory로 ORM 구현 Spring Data Jpa는 Repository에 JpaRepository를 상속받고 엔티티 객체를 구현하여 ORM 구현 JPA를 사용하지만 구현체인 hibernate를 사용하지 않아도 되고 즉 EntityManager로도 충분히 가능함 이 차이점이 맞나요?? Spring Data Jpa를 사용하지 않고 그냥 JPA만 사용할 경우에도 라이브러리를 spring-data-jpa 를 사용하는건가요??

  • java
  • spring
  • JPA
댓글 1 좋아요 0 조회수 654

2:50~3:50 부분

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

안녕하세요. 강의 감사합니다. 2:50~3:00 부분 컨티뉴 디플로이먼트에서 운영에 반영하기 전에 충분한 테스트를 거치고 그 다음에 반영한다는 말인가요? 그 후에 카나리나 배포 블루그린 배포처럼 문제가 있을 수 도 있지만 새버전에 문제가 발생하면 지속적으로 수정 업데이트 한다는 설명으로 이해한게 맞나요??

  • spring-cloud
  • architecture
  • spring-boot
  • JPA
  • msa
  • Kafka
고영호 댓글 1 좋아요 0 조회수 325

컬럼 리스트로 변경

미해결

[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]

안녕하세요 선생님! 9분쯤에 컬럼순서 바꾸려고 리스트해서 하는건 이해하고, value값도 변하지 않는거 까지는 알겠습니다! 근데 iso2를 삭제하고 1번자리에 다시 넣었는데 value값도 그대로 온거면 value값은 iso2라는 컬럼에저장되어있기에 자동으로 오는건가요? 그래서 cols.insest(1, 'iso2') 해야 iso2값이 그래도 오지 여기서 컬럼명을 바꾸고싶다고 다른걸 넣으면 value값은 안따라오는건가요?

  • pandas
  • python
daram 댓글 1 좋아요 0 조회수 261

DTO .as 질문

해결됨

실전! Querydsl

안녕하세요 영한님! 강의 영상 5:36 경에 new QMemberTeamDto 인자의 member.id처럼 필드명이 맞지 않는거를 as로 바꿔주셨는데 @QueryProjection 방법 특성상 생성자로 Dto를 만들어 select하는거라 타입만 맞으면 되지 않나요?? 만약 일부로 as를 사용하신거면 dto 안에 이러한 필드가 있다고 좀 더 명시적으로 나타내기 위한 장치인가요?

  • java
  • JPA
Young.K 댓글 1 좋아요 5 조회수 257

JPA Count 쿼리 Return 값

미해결

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

안녕하세요 JPA 사용하다 궁금한게 생겨 질문드립니다. 현재 강의를 듣고 Spring Data JPA를 사용중인데요 공식 문서를 보니 count query 시 return 값이 Long(Wrapper Type)으로 반환된다 합니다. 혹시나 싶어서 jpa에서 count 후 return class type을 보니 java.lang.Long으로 반환되네요.... 궁금한건 count는 sql도 그렇고 jpa 문서상에도 null인 경우가 없는것으로 보이는데요 JPA에서 Count 쿼리 호출시 primitive가 아닌 Wrapper로 반환하는 이유가 있을까요?? 엔티티 ID처럼 nullable로 인한 이득이 있는것도 아닌데, 결과값을 박싱해서 내려주는게 어떤 이득이 있는지 모르겠습니다. 마지막으로 Long으로 반환되는 결과값을 아래처럼 long으로 unboxing 해서 사용해도 성능이나 여러가지면에서 손해보는면이 있을까요? @Query("select count(m) from ....... wherer ....") long countMember();

  • JPA
  • java
yesorachoi 댓글 1 좋아요 0 조회수 1530

RestTemplate 나 FeignClient는 API GATEWAY는 통과하지 않나요?

해결됨

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

항상 강의 잘 보고 있습니다. 제목 그대로 RestTemplate로 하나 FeignClient로 하나 Gateway log를 살펴보면 user-service만 호출되있네요. 이전에 RestTemplate에서는 url설정시에는 localhost:8000/order-service/%s...이런 식으로 url을 조합했다면 그 이후엔 url을 @LoadBalanced 어노테이션 붙이고 localhost 대신에 마이크로 서비스 이름을 넣었는데 이 방식과 Feign클라이언트로 하는 방식 모두 api gateway 에서는 order service의 로그가 안뜨더라구요. 원래 이 방식으로하면 gateway를 먼저 거쳐가는 게 아닌 마이크로서비스 간에 직접적으로 통신을 하게되나요. 감사합니다.

  • spring-cloud
  • spring-boot
  • JPA
  • architecture
  • msa
  • Kafka
twosom 댓글 1 좋아요 4 조회수 598

article 뿐만 아니라 모든 사진이 404 not found 가 뜹니다

해결됨

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

일반 /static/ 내의 base.css 파일 등은 잘 로드가 됩니다. media 내의 이미지가 로드가 안됩니다... ㅠㅠㅠ 혹시 어떻게 문제를 해결할 수 있는지 알 수 있을까요?

  • python
  • docker
  • django
댓글 2 좋아요 2 조회수 321

의존성에 관한 질문

미해결

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

영한님의 JPA 책으로 공부를 하다가 인프런 강의도 3개나 구매를 하며 현업에서도 JPA를 잘 사용하고 있습니다. 퀄리티 좋은 강의 감사합니다! Mabatis 로만 작업하다 JPA를 사용하게 되었으니 이제 나도 객체지향적인 개발을 제대로 해서 우아한 형제들 개발자로 이직해야지!!! 하며 참고 자료를 찾아서 스터디 하던 중 youtube에서 [우아한 테크세미나 조용호님의 우아한객체지향] 발표 내용을 보게 되었습니다. 지금까지 JPA를 사용하며 연관관계를 객체로 맺었고 당연히 이것이 JPA의 최대 강점 이라고 생각하고 있었는데 조용호님의 설명에서는 연관관계를 객체가 아닌 객체의 id 값으로만 작성하는걸 추천해주시더라구요. 우아한테크세미나 조용호 유투브 강의와 조용호님의 깃헙 소스를 보면서 객체 연관관계에 대해 추천해주신거에 대해 생각을 해보았습니다. 예를 들어 Order 엔티티와 OrderLineItems 엔티티는 Order 라는 도메인안에서 언제나 함께 하는 관계이기에 객체로 연관 관계를 맺고 Delivery, Order, Shop은 서로 연관은 있지만 Order와 OrderLineItems 만큼 함께 하는 애들(?)이 아니기때문에 객체가 아닌 id 값으로 연관관계를 맺는거 같은데. 위의 내용은 다른분의 의견이고 나름 저의 JPA 스승님(^^;)이신 김영한님께서는 이런 연관관계에 대해서 어떻게 생각하시고 어떤걸 더 추천해주시는지 조언을 구하고 싶습니다. 질문이 너무 길어 죄송합니다^^;

  • java
  • JPA
JoongYong Kim 댓글 1 좋아요 0 조회수 238

@Transaction에 대한 궁금중

해결됨

실전! 스프링 데이터 JPA

안녕하세요 영한님. 강의를 들으면서 문득 @Transaction의 위치와 중첩에 대해서 궁금중이 들어서 제 나름대로 몇가지 테스트를 해봤습니다. 첫 번째로, 리포지토리 레이어에 트랜잭션이 적용되어 있고 해당 리포지토리의 메서드를 사용하는 서비스 레이어에도 트랜잭션이 적용되어 있다면 flush는 두 레이어 중 어느 시점에 발생할까 궁금했습니다. 그래서 테스트를 해본 결과 최종적으로 서비스 레이어의 트랜잭션이 끝나는 순간에 모든 쿼리가 적용되는 것을 볼 수 있었습니다. 두 번째로, 위와 동일한 상황에 서비스 레이어의 트랜잭션 옵션만 readOnly라면 리포지토리의 save 메서드는 실제 db에 저장을 할까 궁금해서 테스트해봤습니다. 결과는 물론 서비스 레이어 트랜잭션이 우선이기에 insert 쿼리는 발생하지 않았습니다. 두 테스트를 통해서 트랜잭션 우선권은 좀 더 넓은 범위(?), 즉 요청과 응답에 가까운 레이어의 트랜잭션을 따라간다고 이해가 됩니다. 그렇다면 제 생각에는 컨트롤러에 트랜잭션을 적용한다면, OSIV를 사용하지 않아도 영속성 컨텍스트가 화면을 띄울 때까지 유지될 것 같은데 막상 해보면 no Session 에러를 뿜내요.. 컨트롤러에서 html 파일을 렌더링해서 반환하는게 아니라 컨트롤러에서 정적 파일로 일단 반환하고 트랜잭션이 종료된 후에 따로 렌더링하는 작업을 거쳐서 그런걸까요? 쓰다보니 말이 길어져서.. 죄송합니다 ㅎㅎ..

  • spring-boot
  • java
  • spring
  • JPA
Young.K 댓글 2 좋아요 2 조회수 363

안녕하십니까 Retinanet에 대한 전반적인 이해를 질문하고자 합니다.

해결됨

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하십니까, 현재 RetinaNet을 구현해보고자 Retitanet paper를 읽고 케라스 공식홈페이지의 Retinanet 예시 코드(https://keras.io/examples/vision/retinanet/#implementing-smooth-l1-loss-and-focal-loss-as-keras-custom-losses) 를 이해하고자 하는데 제가 전반적인 흐름을 이해하질 못하고 있습니다. 본 강의에 있는 Fast RCNN 파트에서, 예측 박스가 Ground Truth 좌표값을 따라가는 것이 아닌 Anchor Box 중에서 Ground Truth와 IOU 높은 Positive Anchor Box를 따라간다고 하였습니다. 그렇다면 1. RetinaNet이 작동하기 전 과정이, 우서적으로 Anchor box들 생성하고 그 중에서 Ground Truth와의 IoU>= 0.5인 Positive Anchor Box 찾기 가 맞는지요. 2. 그리고 RetinaNet 구조를 보면 FPN 에서 나온 P3 ~ P7(Retinanet paper 기준) feature map을 class subnet과 box subnet으로 각각 들어가게 되고, 위 케라스 공식 홈페이지 예제 코드 이때, box subnet의 결과값이 W x H x (4 x 9) 꼴인데, Positive Anchor Box의 좌표는 (x, y, w, h)로 4개인데 어떻게 regression 계산이 되는지 궁금합니다. class subnet에 들어가게 되면 W x H x (num_classes x 9) 꼴의 결과값이 나오는데, 이는 2번질문과 마찬가지로 class labeling은 0,1,2,...과같은 정수형이거나 벡터형으로 나타날텐데 어떻게 regression 계산이 되는지 궁금합니다. 3. 또한, Positive Anchor Box를 제외한 나머지 Anchor Box들은 결국에는 직접적인 학습에 사용되지 않는 것인지요? 만약 사용된다면 Negative Anchor Box(IoU < 0.4)와 Ignorance Anchor Box(0.4 <= IoU < 0.5)가 어떤식으로 사용되는 지에 대해 설명 부탁드립니다. 4. 또한, 한 이미지에 서로 다른 객체가 2개 이상일 때, feature map이 class subnet에 들어가서 도출된 결과값( (num_classes) X 9)이 어떤 방식으로 해당 객체의 레이블과 대응하여 학습되는지 궁금합니다. 예를 들어, 사과(0), 고양이(1), 강아지(3) 클래스가 3개인 데이터셋에서, 사과(0)와 고양이(1)가 존재하는 특정 이미지를 RetinaNet에 training시키게 되면, P3 ~ P7의 feature map이 class subnet으로 들어가서 W x H x (3 x 9)꼴의 결괏값이 나올텐데, 이때 해당 결괏값이 사과(0)인지, 고양이(1)인지 어떤 값이 대응하여 학습해야할 지에 대해서 알 수가 없어 이렇게 질문드립니다. 대략적인 이론을 알고 있다고 생각하여 직접 코딩을 하려했지만, 막막하여 keras 예제를 통해 역으로 이론을 이해하려 시도했습니다. 하지만 코드 자체가 이해가 되질 않고, 어떤 식으로 데이터가 흘러가지는에 대해서도 파악할 수가 없었습니다.. 혼자서 해결해보려 했으나 며칠동안 해결되지 않고 오히려 이해가 되지 않는 부분이 많아져서 이렇게나마 질문을 드립니다...

  • 머신러닝 배워볼래요?
  • 컴퓨터-비전
  • tensorflow
  • python
  • 딥러닝
  • keras
댓글 4 좋아요 1 조회수 527

인기 태그

인프런 TOP Writers

주간 인기글