일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
- Today
- Total
목록분류 전체보기 (353)
기록
시작하면서아래 내용은 "자바 ORM 표준 JPA 프로그래밍" 책을 읽고 정리한 내용입니다. 스프링 데이터 JPA는 Java Persistence API(JPA)를 더 쉽게 사용할 수 있도록 도와주는 모듈로, 데이터베이스와의 상호작용을 효율적으로 처리하는 데 큰 역할을 합니다. 이 모듈은 CRUD(생성, 조회, 수정, 삭제) 작업을 위한 공통 인터페이스를 제공하며, 개발자가 리포지토리를 구현할 때 인터페이스만 작성하면 실행 시점에 스프링 데이터 JPA가 해당 구현체를 동적으로 생성하고 주입해줍니다. 이를 통해 데이터 접근 계층을 간결하게 유지할 수 있고, 생산성을 크게 높일 수 있습니다.공통 인터페이스 기능스프링 데이터 JPA는 CRUD 작업을 위한 공통 메서드를 제공합니다. 대표적인 메서드는 다음과 같습..
시작하면서자바 ORM 표준 JPA 프로그래밍을 공부하면서 9장에서 다루는 "값 타입"에 대해 정리해보았습니다. 이번 글에서는 값 타입의 종류와 그 특징을 설명하며, 실제 개발에 어떤 점들을 고려해야 하는지 소개합니다.값 타입이란?JPA에서 값 타입은 int, Integer, String처럼 단순한 값을 나타내는 자바 타입이나 객체를 말합니다. JPA에서는 이러한 값 타입을 크게 세 가지로 나눌 수 있습니다.기본 값 타입: 자바에서 제공하는 기본 데이터 타입 (int, double, Integer, String 등)임베디드 타입 (복합 값 타입): 사용자가 직접 정의한 여러 속성을 하나로 묶은 값 타입컬렉션 값 타입: 값 타입을 여러 개 저장하기 위해 컬렉션에 보관하는 방식입니다.각 값 타입은 JPA에서 ..
시작하면서아래 내용은 "자바 ORM 표준 JPA 프로그래밍" 8장을 읽으면서 정리한 내용입니다. JPA(Java Persistence API)를 사용할 때 중요한 개념 중 하나는 '연관관계 관리'입니다. 연관된 엔티티를 효과적으로 로딩하고, 엔티티의 생명주기를 관리하는 것은 JPA를 활용하는 데 매우 중요한 요소입니다. 이번 포스팅에서는 프록시, 즉시 로딩과 지연 로딩, 영속성 전이, 고아 객체와 같은 주요 개념들을 다루어 보겠습니다.1. 프록시와 지연 로딩1.1 프록시란?JPA에서는 데이터베이스에서 객체를 조회할 때, 실제 데이터를 필요한 순간까지 미루는 '지연 로딩(Lazy Loading)'이라는 방식을 사용할 수 있습니다. 이때 중요한 역할을 하는 것이 바로 프록시입니다.프록시는 실제 엔티티 대신 ..
시작하면서아래는 "자바 ORM 표준 JPA 기술"의 7장 내용을 읽고 정리한 내용입니다. 복합 키와 식별 관계 매핑은 JPA에서 엔티티 설계 시 가장 중요한 고려사항 중 하나입니다. 데이터베이스의 구조와 비즈니스 로직의 유연성을 결정하는데 큰 영향을 미치기 때문입니다. 이 포스트에서는 JPA의 복합 키 매핑 방식인 @IdClass와 @EmbeddedId를 비교하고, 이를 통해 식별 관계와 비식별 관계를 어떻게 설계할 수 있는지 설명하겠습니다.1. 식별 관계와 비식별 관계 개요복합 키를 사용할 때에는 '식별 관계'와 '비식별 관계' 중 어떤 것을 선택할 것인지에 대한 고민이 필요합니다. 이 두 관계는 외래 키가 기본 키에 포함되는지 여부에 따라 구분됩니다. 최근에는 비식별 관계가 더 많이 사용되며 권장되는..
시작하면서이번 포스팅에서는 "자바 ORM 표준 JPA 기술"의 7장 내용을 바탕으로 JPA의 상속 관계 매핑 설계에 대해 알아보겠습니다.상속 관계 매핑은 객체 지향 언어의 상속 개념을 데이터베이스에서도 효과적으로 구현할 수 있는 유용한 기법입니다. 예를 들어, Item이라는 부모 클래스를 정의하고 이를 상속받는 Album, Book, Movie와 같은 자식 클래스를 생각해 볼 수 있습니다. Item은 이름과 가격 같은 공통된 속성을 가지고, 각 자식 클래스는 자신만의 고유한 속성(예: Album의 아티스트, Book의 저자, Movie의 감독)을 가질 수 있습니다.이 글에서는 상속 관계를 데이터베이스에서 어떻게 매핑할 수 있는지 세 가지 전략을 통해 살펴보겠습니다: 조인 전략(Joined Strategy..
시작하면서Java ORM 표준 JPA에서 다양한 연관관계 매핑을 다루는 6장을 읽고 중요한 내용을 정리해 보았습니다. 이 글에서는 객체의 관계를 어떻게 매핑하고, 각각의 경우에 장단점은 무엇인지 살펴보겠습니다. 특히 연관관계의 종류와 주의할 점들을 중심으로 설명하겠습니다.1. 다대일 관계 (N:1)한쪽 객체가 여러 객체를 참조하는 관계로, 예를 들어 회원(Member)이 팀(Team)에 속해 있을 때, 여러 회원들이 하나의 팀에 속할 수 있으므로 다대일 관계가 성립됩니다.다대일 단방향 매핑 (N:1)다대일 단방향 관계에서는 한쪽에서만 참조가 가능합니다. 예를 들어 회원이 팀을 참조하지만, 팀은 회원을 참조하지 않는 경우입니다. 이런 경우에는 다음과 같이 매핑할 수 있습니다.@Entitypublic cla..
1. 우선순위 큐란?우선순위 큐는 일반적인 큐와는 달리, 각 요소가 우선순위를 가지고 있어 높은 우선순위를 가진 요소가 먼저 처리되는 자료구조입니다. 예를 들어, 긴급 상황에서 긴급도가 높은 환자가 먼저 치료받는 병원의 대기열과 같은 개념을 생각할 수 있습니다.C++에서는 우선순위 큐를 구현할 수 있는 여러 가지 방법이 있으며, 여기서는 priority_queue와 multiset 두 가지를 중심으로 살펴보겠습니다.2. priority_queue를 사용한 최대 힙과 최소 힙 구현C++의 priority_queue는 기본적으로 최대 힙으로 구현되어 있어, 큰 값이 먼저 나오도록 정렬됩니다. 즉, 기본 설정에서는 큰 값이 높은 우선순위를 가지게 됩니다. 하지만 최소 힙을 만들고자 한다면 다음과 같이 설정할 ..
오늘의 학습 키워드문제1: 가장 긴 감소하는 부분 수열 (BOJ 11722)공부한 내용 정리접근 방식가장 긴 감소하는 수열을 찾기 위해서는 각 원소가 이전 원소들과의 관계를 확인하여, 그중 가장 긴 감소하는 길이를 찾아야 합니다. 단순히 원소들 간의 크기만 비교하는 것이 아니라, 현재 원소가 이전 원소들과 어떻게 연결되는지를 계산하여 가장 긴 감소하는 경로를 찾아야 합니다.dp 배열은 각 원소를 마지막으로 하는 가장 긴 감소하는 부분 수열의 길이를 저장합니다. 각 원소를 순회하면서 자신보다 작은 이전 원소를 찾아, 그 원소를 기준으로 감소 수열의 최대 길이를 갱신합니다. 이를 통해 모든 원소에 대해 가능한 가장 긴 감소 수열을 구할 수 있습니다.for (int j = 0; j sequence[i]) {..