본문 바로가기

JAVA/JPA3

JPA에서 @JoinColumn 어노테이션과 @JoinTable 어노테이션 설명 @JoinColumn 어노테이션은 JPA에서 엔티티 클래스 간의 관계를 매핑할 때 사용되며, 주로 외래 키(foreign key)를 관리하는 데 사용된다. 이 어노테이션은 주로 @ManyToOne 또는 @OneToOne 관계에서 사용되며, 엔티티 클래스 간의 관계를 데이터베이스 스키마의 관계로 정의할 때 중요한 역할을 한다. name: 외래 키 컬럼의 이름을 지정한다. 이 속성을 사용하여 외래 키 컬럼의 이름을 직접 지정할 수 있다. (예를 들어, @JoinColumn(name = "order_id") 와 같이 사용할 수 있다) referencedColumnName: 대상 엔티티(포함 엔티티)의 기본 키(primary key)컬럼의 이름을 지정한다. 기본값은 대상 엔티티의 기본 키 컬럼의 이름과 동일하게.. 2024. 3. 29.
JPA에서 @Transient 어노테이션 활용하기: 데이터베이스와 관련 없는 정보 다루기 @Transient 어노테이션은 JPA에서 사용되며, 해당 어노테이션을 필드에 적용하면 해당 필드가 엔티티의 일부가 아니며, 데이터베이스와 매핑되지 않아야 함을 나타낸다. 이 어노테이션은 주로 엔티티 클래스 내에서 임시적인 정보나 계산된 값을 저장할 때 사용된다. 이를 통해 데이터베이스와 관련 없는 엔티티 내의 부가 정보를 효과적으로 다룰 수 있다. 엔티티 클래스와 데이터베이스 매핑: 일반적으로 JPA를 사용하여 엔티티 클래스를 정의할 때, 엔티티 클래스의 필드들은 데이터베이스의 컬럼과 매핑된다. 이렇게 매핑된 필드들은 데이터베이스 테이블에 저장되거나 조회되는 역할을 한다. @Transient 어노테이션 사용: 그러나 때로는 엔티티 클래스 내에 데이터베이스에 저장하지 않아도 되는 정보나 계산된 값이 필요.. 2024. 3. 29.
JPA와 엔티티 매니저: 데이터베이스 상호작용 엔티티 매니저(EntityManager)는 Java Persistence API(JPA)에서 사용되는 중요한 인터페이스이다. 이 인터페이스를 통해 엔티티 객체를 관리하고 데이터베이스와 상호작용할 수 있다. 엔티티 매니저 팩토리(EntityManagerFactory) : 엔티티 매니저를 생성하기 위한 팩토리다. 일반적으로 애플리케이션의 라이프사이클 동안 한 번만 생성하며, 데이터베이스 연결 및 설정과 같은 초기화 작업을 수행한다. (데이터베이스와의 연결 설정, 데이터베이스 드라이버, 데이터베이스 URL, 사용자 이름, 비밀번호 등과 같은 데이터베이스 관련 설정을 관리) 트랜잭션 관리: 데이터베이스와 상호작용 시 데이터 일관성과 안정성을 유지하기 위한 중요한 개념이다. 엔티티 매니저는 이러한 트랜잭션 관리를.. 2024. 3. 29.