일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- seaborn
- tutorial
- SQL
- 파이썬
- 블록체인
- 데이터 시각화
- Ai
- 프로그래밍
- SpringDataJpa
- java
- node.js
- 스마트컨트랙트
- querydsl
- 웹개발
- ChatGPT
- 데이터 분석
- 이더리움
- 실습
- Practice
- 데이터베이스
- 딥러닝
- springboot
- OpenAI
- 블록체인실습
- 암호화폐
- 머신러닝
- ORM
- Python
- JPA
- 코딩
- Today
- Total
목록SpringDataJpa (6)
집돌이 공대남 IT
JPA 활용 전략 및 최적화 기법: 고급 매핑 전략과 벌크 연산 안녕하세요, 집돌이 공대남입니다. 이번 포스트에서는 JPA의 고급 매핑 전략과 벌크 연산에 대해 다뤄보겠습니다. JPA는 객체지향 프로그래밍의 특징과 데이터베이스 테이블간의 차이점을 해소하는 고급 매핑 전략을 제공합니다. 또한, 벌크 연산을 통해 한 번의 쿼리로 여러 행을 한꺼번에 처리하는 것이 가능합니다. 그래서 오늘은 실습을 해보려 합니다.(항상 그랬지만..) 고급 매핑 전략 우선, 상속 관계 매핑을 보겠습니다. JPA는 SINGLE_TABLE, JOINED, TABLE_PER_CLASS 세 가지의 상속 관계 매핑 전략을 제공합니다. 아래의 코드는 SINGLE_TABLE 전략을 사용한 예시입니다. @Entity @Inheritance(s..
JPA 활용 전략 및 최적화 기법: 쿼리 최적화와 트랜잭션 관리 안녕하세요. 집돌이 공대남입니다. 초급부터 전문가까지 과정을 총 15회를 거쳐서 마쳤습니다. 초급을 하시면서 쿼리 최적화도 잠시 해보고 트랜잭션 관리도 해보고 이렇게 최적화를 초급단계에서 조금씩 맛(?) 보았습니다. 이제 중급 단계에서 좀 더 다뤄보도록 하겠습니다. 이번 포스트에서는 JPA를 활용한 쿼리 최적화 전략과 트랜잭션 관리에 대해 실습하면서 배워보도록 하겠습니다. 쿼리 최적화 JPA를 사용하면서 데이터베이스 쿼리를 최적화하는 데에는 여러 전략이 있습니다. 여기서는 페치 전략과 캐시를 이용한 최적화에 대해 다루겠습니다. 페치 전략: JPA는 LAZY와 EAGER 두 가지 페치 전략을 제공합니다. LAZY(나태) 전략은 데이터가 실제로..
JPA 실습: 복잡한 도메인 모델과 비즈니스 로직 다루기 안녕하세요. 집돌이 공대남입니다. 이번에는 좀 더 복잡한 도메인 모델과 비즈니스 로직을 다루는 JPA 실습을 진행해 보겠습니다. 이번 실습에서는 회원, 상품, 주문 등 여러 개의 도메인을 다루며, 1:N, N:1, N:M 등 다양한 관계 매핑을 경험해볼 예정입니다. 재밌겠죠?(아닌가..) 1단계: 도메인 모델링 먼저, 회원(Member), 상품(Item), 주문(Order), 주문 상세(OrderItem) 등의 엔티티를 만들어 보겠습니다. @Entity public class Member { // 기존에 작성한 코드 @OneToMany(mappedBy = "member") private List orders = new ArrayList(); } @..
JPA 실습: 실제 애플리케이션에 활용하기 안녕하세요, 집돌이 공대남입니다. 오늘은 JPA를 활용하여 실제 애플리케이션을 구축해보는 실습을 진행해보겠습니다. 이번 포스트에서는 간단한 웹 애플리케이션을 만들어볼 예정이며, 애플리케이션에는 회원 등록, 회원 조회, 회원 수정, 회원 삭제 기능이 포함될 예정입니다. 재미있으시길 바라겠습니다.^^ 1단계: 개발 환경 설정 먼저, 실습을 위해 필요한 개발 환경을 설정하겠습니다. 이를 위해서는 Spring Boot를 기반으로 JPA를 적용할 준비를 해야 합니다. 2단계: 도메인 모델링 회원(Member) 클래스를 만들어 보겠습니다. 아래는 'Member' 엔티티의 예시입니다. @Entity public class Member { @Id @GeneratedValue ..
Entity Graph와 QueryDSL로 애플리케이션 개선하기 안녕하세요.집돌이 공대남입니다. 지난 포스트에서는 JPA의 Entity Graph와 QueryDSL에 대해 알아보았습니다. 이번에는 이러한 기능들을 어떻게 실제 애플리케이션에서 활용하는지에 대해 살펴보겠습니다. Entity Graph를 활용한 데이터 조회 최적화 Entity Graph는 JPA에서 제공하는 기능 중 하나로, 한 번의 쿼리로 필요한 연관 엔티티까지 함께 조회할 수 있게 해줍니다. 이를 사용하면 N+1 문제를 피하고, 필요한 데이터만 효율적으로 가져올 수 있습니다. 예를 들어, '사용자(User)'와 '주문(Order)'가 있고, 사용자와 그의 모든 주문을 한 번의 쿼리로 가져오려면 Entity Graph를 사용할 수 있습니다...
JPA 고급 기능 - Entity Graph와 QueryDSL 상세 가이드 안녕하세요, 여러분! 집돌이 공대남입니다. 이번 포스트에서는 JPA의 고급 기능인 Entity Graph와 QueryDSL에 대해 상세하게 살펴보도록 하겠습니다. 이 글을 통해 JPA를 이용한 데이터 액세스가 더욱 효율적으로 이루어질 수 있습니다. 1. Entity Graph란? Entity Graph는 JPA 2.1에서 도입된 기능으로서, 엔티티를 조회할 때 해당 엔티티와 연관된 엔티티들까지 한 번에 조회하는 것을 가능하게 합니다. 이를 활용하면 여러 번의 쿼리를 보내는 대신 한 번의 쿼리로 필요한 모든 데이터를 가져올 수 있습니다. 특히 이 기능은 Lazy Loading으로 인해 발생하는 N+1 문제를 해결하는 데에 유용합니다..