Thumbnail
BEST 개발 ・ 프로그래밍 웹 개발
실전! 스프링 데이터 JPA
(5.0)
109개의 수강평 ∙ 1894명의 수강생
88,000원

월 17,600원

5개월 할부 시
지식공유자 : 김영한
총 32개 수업˙총 7시간 17분
평생 무제한 수강
수료증 발급 강의
중급이상 대상
내 목록 추가 1546 공유
H.Maker 프로필

메소드 이름으로 쿼리 생성에서 질문이 있습니다. H.Maker 1일 전
안녕하세요. 강의 듣다가 궁금한 것이 있어서 질문을 드립니다. data JPA repository 에서 메소드를 이용해 작성하던 것 중 궁금한것이 있습니다. List<Member> findByUsernameAndAgeGreaterThan(String username, int age); 여기에서 findByUsername에서 Username이 @Entity에서 username을 참조하는 것인지 아니면 db에 있는 username을 말하는 것인지 궁금합니다. 답변 자세히 해주시면 감사하겠습니다...

2
유근일 프로필

즉시로딩 처리 시 findAll()일 경우 동작이 안되는 이유가 궁금합니다. 유근일 4일 전
강의 중에는 실무에선 즉시로딩을 사용하지 말라고 하셨지만 테스트 차원에서 즉시로딩으로 findAll()을 조회하면 내부에서 left outer join이 걸리는 않는 현상을 확인했습니다. 동일한 조건에서 findById()로 처리하면 left outer join이 걸립니다. OneToMany, ManyToOne 모두 동일하게 동작을 하던데 혹시 이렇게 동작되는 이유가 있을까요??? 미리 답변 감사드립니다.

1
이진호 프로필

테이블 파티셔닝 질문드립니다. 이진호 6일 전
안녕하세요 영한님 강의 정말 잘 듣고있습니다! 다름이 아니라 진행하는 프로젝트 DB에서 연간 1억건이 넘는 row 가 쌓이는 통계 테이블이 있어서 조회 성능을 어떻게 해결하면 좋을지 문의드립니다. 참고로 DB는 마리아입니다. 테이블 파티셔닝을 이용해 진행하려고 하는데 JPA로도 문제없이 파티셔닝을 적용할 수 있는지 궁금합니다. 또 강의와는 좀 다른 얘기지만 통계 테이블의 pk컬럼과 index를 어떤식으로 구성하는 것이 좋을지 질문드립니다. 관련 내용이나 키워드를 알려주시면 정말 감사하겠습니다ㅠㅠ

1
Jon 프로필

스프링 JPA에서의 연관관계 Jon 12일 전
질문이있습니다. 일반 JPA를 사용할때에는 1:N인 경우 lazy 초기화를 해야하는 걸로 알 고있습니다. spring data 가 만들어주는 repository method에서는 이런 1:N 1:1 등 양방향관계가 있을때 어떻게 작동이되는것인가요?  따로 Lazy 초기화 처리를 하지 않아도 되는것인가요?

5
김광훈 프로필

안녕하세요, Spring-data-JPA와 Jdbc 의존 관계 질문드립니다 ! 김광훈 13일 전
안녕하세요 강사님 !! 좋은 강의 덕분에 스프링을 한 번도 사용해보지 않았지만, 빠르게 잘 적응 중 입니다, !!!  테스트 중에 spring-data-jpa와 spring-data-jdbc 의존성 추가했을 때, 오류가 발생하는 것을 발견하여 질문 드립니다. 현재 상황은 Gradle에 아래와 같인 의존 관계를 설정 하였습니다. 사진에서 보이는 바와 같이 기존에 spring-data-jpa를 먼저 추가하였고, 그 이후 spring-data-jdbc를 추가하였습니다. 하지만 spring-data-jdbc는 빌드에 실패하였고, spring-jdbc는 빌드에 성공하였는걸 확인하였습니다. 실패했을 때의 에러 로그는 아래와 같습니다. 오류 메시지를 확인해보았을 때 XXXRepository를 오버라이드 할 수 없다고 출력이되는데 저의 추측으로는 spring-data-jpa, spring-data-jdbc에서 component scan을 할 때, 순서상 어떤 것이 먼저 등록하는지는 모르겠지만 두 의존성이 동일한 클래스를 Bean으로 등록하려고 할 때 발생하는 에러인 것 같습니다. (현재 등록된 CrudRepository를 상속 받은 interface에는 모두 @Repository 어노테이션을 걸어두었습니다.) 혹시 저의 생각이 맞다면 이 부분은 어떻게 해결할 수 있는지 알 수 있을까요 ??? 만약 아니라면 어떤 부분이 이슈인지 궁금합니다. !!! 마지막으로 spring-jdbc같은 경우는 왜 오류가 발생하지 않았는지 궁금합니다 !!!

2
Jon 프로필

Spring Data JPA로 Redis를 사용할 수 있을까요? Jon 16일 전
안녕하세요 영한님 언제나 좋은 강의 너무 감사합니다 ! 다름아니라 질문이 있습니다 보통 Mysql, h2 데이터베이스를 연결하는데, 혹시 Redis 를 캐시용도가아니라, 진짜 DB처럼 이용하는 방식으로 JPA를 사용할 수 없을까요? 

1
김승민 프로필

Page 관련 문의 건 김승민 19일 전
안녕하세요. 항상 강의 잘 듣고있습니다. 다름이 아니라 강의 듣는 와중에 궁금한게 생겨서 문의 드립니다. 1. 현재 실무 하실 때 Page<DTO> 와 Pageable를 그대로 사용하시는지 아니면 별도의 PageRequest와 PageResponse를 따로 만들어서 사용하시는지 궁금합니다. 2. Page를 사용하게 되면클라이언트 쪽에서 페이징 처리 할때 필수적으로 필요한 정보(totalElements, offset, limit)와 Contents 정보를 외에 많은 정보들이 응답 시 포함 되게 되는데 네트워크 단에서의  오버헤드라고 보지는 않나요? 이상입니다. 감사합니다.

1
hihoihi 프로필

save시 중복 pk 값 입력 검증? hihoihi 20일 전
안녕하세요. 강의 감사하게 잘 보고있습니다. pk 값을 squenceGenerator를 사용해서 save하는 방법을 생각해봐서 테스트 중인데요.  가끔 sequence가 중복이되어 save시에 다른 동작을 하지않고 update로 진행되어 중복된 pk 값으로 db에 데이터가 쌓이게 됩니다 ㅠ  save 시에 pk값이 중복되어 update되어 생기는 문제를 해결할 수 있는 방법이 따로 있을까요?

1
참치캔 프로필

pk 질문 드립니다~ 참치캔 27일 전
안녕하세요. 강의를 보다가 궁금한게 있어서 질문 남깁니다! pk값만 자바에서 기본형을 사용하지 않고 래퍼 클래스로 사용하시는 이유가 궁금합니다! 그리고 @GenerateValue를 하면 persist할 때 값이 셋팅된다고 하셨는데, 리플렉션을 이용해서 셋팅되는 건가요? 원래 merge에서 null인지 확인하기 때문에 래퍼 클래스를 사용하는줄 알았는데, 기본형일 경우 0인지 확인 하더라고요~ 그제가 잘못 알고있었던 거였네요..ㅎㅎㅎ  그럼 어떤 이유에서 래퍼 클래스가 사용되는 건가요??!

1
두잇베스트 프로필

Transaction에 관해서 질문드립니다. 두잇베스트 1달 전
오랜만에 질문 드리네요!.  완강하였지만 복습하고 있는데, OSIV가 켜있는 상태면 (기본이 켜있지만) 스프링 데이터 jpa에서 save를 하고 나더라도 트랜잭션 끝나고 플러시 커밋하더라도 영속성 컨텍스트는 살아있지 않나요?? 그래서 비즈니스 계층에서 수정은 되지않지만 (트랜잭션 범위안에서 수정,제거가 가능하고), 조회가 가능한것처럼. 강의에서 없어진다고 말씀하셔서 제가 잘못 알고 있나해서 질문드립니다.

3
digitcom 프로필

join시 성능관련 질문드립니다. digitcom 1달 전
사용자별 약관동의 내역을 조회할 필요가 있습니다. 그래서 아래와 같이 처리했습니다. @EntityGraph(attributePaths = {"userTerms", "userTerms.terms"})@Query("select a from Account a where a.uid =:uid") Terms : 약관 entity UserTerms : 사용자별약관동의 내역 entity결과는 정상적으로 확인할 수 있는데 entityGraph로 terms까지 가져오다 보니까 terms의 content(약관내용)까지 가져옵니다. 약관내요이 굉장히 긴 글이라서 조히대상에서 제외하고 싶은데요.이 경우에는 JPQL로 필요한 필드만 DTO로 받는 방법말고 손쉽게 처리하는 방법은 없을까요?

2
Yeon 프로필

@EntityGraph로 ToMany 를 가져왔을 때 질문이 있습니다. Yeon 1달 전
안녕하세요, 늘 좋은 강의 잘 듣고 있습니다. 다름이 아니라 @EntityGraph를 듣다가 문득 예전 강의에서 ToMany 관계를 조인하게 되면 중복 데이터가 난다고 들었던 것 같은데, 프로젝트에서 @EntityGraph 사용 중 다음과 같이 예상치 못한 현상을 보게되어 문의드립니다.  보기에 JPQL과 함께 사용하지 않으면 @EntityGraph만 사용해도 중복 데이터를 해결하는 것 처럼 보이는데, 제가 이해한게 맞을까요? 그리고 어떤 이유로 인하여 위와 같은 차이가 생기는지, 실무에서 첫번째처럼 사용해도 괜찮은지 궁금합니다. 문서들을 찾아보다가 답을 구하기 힘들어 도움을 요청드립니다. 감사합니다!

2
김진현 프로필

jpql update 문 관련 질문 김진현 1달 전
갑자기 궁금증이 생겨 질문드립니다. 벌크 연산은  member2에 age를 +1시켜줍니다. 이떄 db에 쿼리가 넘어가서 db상에 member2 age는 5가되고 영속성컨테스트안에 member2 age는 4가 그대로 유지됩니다. 이 상황에서 플러쉬를 하면 왜 변경감지가 일어나지 않나요? Member member1=new Member("member1",2,null);Member member2=new Member("member2",4,null);memberJpaRepository.save(member1);memberJpaRepository.save(member2); int i = memberJpaRepository.bulkAgePlus(3); em.flush();

1
이지훈 프로필

리포지토리 분리 이지훈 1달 전
리포지토리를 분리하신다고 하셨는데1. 정말 간단한 쿼리는 스프링 데이터 JPA 리포지토리에서 구현, 쿼리메서드 기능들을 이용하고조금 복잡하고, 강의에서 설명해주신 다양한 이유에 해당하면 사용자 정의 리포지토리를 구현해서 사용하고더 복잡한 동적쿼리들은 따로 클래스를 만들어서총 3개의 리포지토리를 운영하게 되는건가요?2. 서비스와 리포지토리는 1:1로 매핑하는게 좋다고 들었는데 그럼 3개의 서비스클래스도 따로 만드나요?3. 핵심 비즈니스 로직과 단순 화면 관련 로직도 구분은 서비스계층에서 이루어지나요? 그럼 하나의 서비스에서 두개의 리포지토리를 접근해도 괜찮나요??아직 아키텍처를 고민할만한 실력은 아니지만궁금점이 해결되지 않아 질문남깁니다..

2
2010psw 프로필

영속성 컨텍스트 관련 질문입니다. 2010psw 1달 전
혹시 트리거를 사용하게 되면 영속성 컨텍스트를 통해 데이터가 바뀌는 것이 아닌데 마이바티스/혹은 데이터베이스를 직접 조작하는것처럼 적용되는지 궁금해서 질문남깁니다. 오늘 데이터상 오류를 발견하고 1주일전의 데이터를 수정했을 때 트리거를 적용시켜서 1주일 전부터 오늘까지의 데이터를 수정하게 된다면 영속성 컨텍스트는 어떻게 적용이 되나요?? 예를 들어서 dataA.getTemp() = 100 인 상태에서 dataB의 어떠한 데이터를 변경했을 때 트리거가 동작해서 dataA의 Temp가 변경된다면 영속성컨텍스트는 트리거에 의한 데이터 변경도 감지할 수 있나요?

1
88,000원

월 17,600원

5개월 할부 시
내 목록 추가 1546 공유
지식공유자 : 김영한
총 32개 수업˙총 7시간 17분
평생 무제한 수강
수료증 발급 강의
중급이상 대상
수강 전 궁금한 점이 있나요?
문의하기
문의
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스