2024/05/04 2

[JPA] JPA의 기본 키 생성 전략

기본키 적용을 위한 어노테이션:@Id: 단순히 하나의 필드를 기본키로 지정할 때 사용됨. @IdClass: 복합키를 지원하며, 별도의 클래스를 이용하여 복합키를 정의할 때 사용됨.@EmbeddedId: 복합키를 임베디드 타입으로 사용할 때 적용되며, 복합키를 내장된 객체로 처리함.기본키를 어디서 생성할지 결정해야함.애플리케이션에서 생성하는 방식과 데이터베이스에서 생성하는 방식, 두 가지 기본 키 생성 매커니즘을 결정하는 것이 필요함.애플리케이션에서 생성:자바 프로그램 내에서 유니크한 값을 생성하여 기본 키로 사용함.UUID와 같은 메소드를 사용하여 독립적으로 유니크한 값을 생성함.데이터베이스 시스템에 독립적이며 다양한 데이터베이스와 호환됨.데이터베이스에서 생성:데이터베이스의 내장 기능을 사용하여 자동으로..

[JPA] Entity Mapping

@Entity 어노테이션을 사용하면 해당 클래스가 도메인 객체를 관계형 데이터베이스의 테이블로 맵핑됨을 나타냄.@Entity 어노테이션만 사용했을 때, 기본적으로 테이블 이름은 클래스 이름을 따르며, 대소문자 구분이 일어나지 않음.대부분의 관계형 데이터베이스 관리 시스템(RDBMS)은 대소문자를 구분하지 않으므로, 이러한 기본 JPA 작명 규칙은 일반적으로 문제를 일으키지 않음.Table 이름을 명시적으로 지정하고 싶을 때 @Table 어노테이션을 사용할 수 있음.@Table 어노테이션은 테이블 이름뿐만 아니라, 카탈로그, 스키마, 인덱스 등 테이블과 관련된 추가적인 설정을 할 수 있게 해줌.@Table(name = "table")과 같이 사용하면, 실제 데이터베이스에 생성되는 테이블 이름을 'table..