본문 바로가기

Programming4

[JPA / Hibernate] 복합키(Composite Key)를 갖는 객체(Entity) 간의 연관관계 매핑 보통의 JPA 예제에서는 단일 컬럼을 PK로 갖는 엔티티 간의 연관관계 매핑을 주로 다룹니다. 그러나 실제로 Legacy System을 JPA 기반의 어플리케이션으로 개발하다보면 기존의 데이터 모델이 복합키를 갖고, 식별관계로 매핑된 경우를 경우를 쉽게 볼 수 있습니다. 이번 글을 통해 이런 경우 어떻게 JPA를 활용할 수 있는지 다뤄보고자 합니다. 목차 기본적인 1:N 연관관계 매핑 @IdClass를 통한 복합키(Composite Key) 설정 DB에서 식별관계를 갖는 객체의 연관관계 매핑 요약 기본적인 1:N 연관관계 매핑 아래의 이미지는 이번 포스팅에서 예시를 들기 위해 설계한 1:N 관계의 엔티티 입니다. 회원을 의미하는 Member 와 회원별 주문내역을 다루는 MemberOrderHistory .. 2022. 12. 7.
[JAVA] Atomic 변수와 동시성 제어 (AtomicInteger, AtomicLong, AtomicBoolean, AtomicReference) 얼마 전 코드에서 AtomicInteger 타입으로 선언된 변수를 발견했고, 관련 내용들을 찾아보게 되었다. 이번 글에서는 synchronized에 비해 적은 비용으로 동시성을 제어할 수 있는 Atomic 변수의 특성에 대해 알아보고자 한다. 목차 Atomic 변수란? Java에서 동시성을 제어하기 위한 세 가지 방법 Atomic 변수의 장점 : Compare-and-swap(CAS) Atomic 변수의 주요 메서드와 사용예시 Atomic 변수란? Atomic 변수는 멀티쓰레드 환경에서 동시성을 보장해준다. 흔하게 사용되는 Atomic 변수 클래스로는 AtomicInteger, AtomicLong, AtomicBoolean, AtomicReference 등이 있고, 이들은 atomic하게(동시성을 보장받.. 2022. 9. 19.
[Pandas] - DataFrame에서 데이터 Select 하기(loc[], iloc[]) Pandas의 2차원 데이터 객체인 DataFrame에서 원하는 데이터를 Select 하는 법을 알아보자. 데이터프레임 생성하기먼저 상품별 가격, 판매량, 재고 정보가 담긴 DataFrame을 만든다.import numpy as npimport pandas as pddata = {'가격':[1000,2100,3000,700], '판매량':[20,40,35,60], '재고':[100,50,200,70]}df = pd.DataFrame(data, index=['컵라면','커피','도시락','사탕']) 원하는 Column 그룹 데이터 조회하기df["column명"] 을 통해 원하는 Column(열) 정보를 조회할 수 있다. 예를들어, '가격' column 정보를 얻고자 하는 경우 아래와 .. 2020. 10. 26.
[Pandas] - DataFrame 생성하기 Python Library 중 하나인 Pandas를 이용하여 DataFrame을 생성해보자 DataFrame 이란?Pandas의 2차원 데이터 객체 DataFrame 객체와 parameter 설명class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)  1) data : ndarray (structured or homogeneous), Iterable, dict, or DataFrame   = 데이터프레임으로 만들고자 하는 데이터를 전달, 아래 타입의 객체들을 전달할 수 있음     - ndarray : numpy를 통해 생성한 ndarray 객체     - Iterable : 반복가능한 객체 (예: list, .. 2020. 10. 23.
반응형