728x90
@Entity
@TableGenerator(
name = "BOARD_SEQ_GENERATOR",
table = "MY_SEQUENCES",
pkColumnValue = "BOARD_SEQ", allocationSize = 1)
public class Board (
@id
@GeneratedValue(strategy = GenerationType.Table,
generator = "BOARD_SEQ_GENERATOR")
private Long id;
)
name: 식별자 생성기 이름
table: 키생성 테이블 명
pkColumnName: 시퀀스 컬럼 명
valueColumnName: 시퀀스 값 컬럼명
pkColumnValue: 키로 사용할 값 이름
initialValue: 초기 값, 마지막으로 생성된 값이 기준이다.
allocationSize: 시퀀스 한 번 호출에 증가하는 수(성능 최적화에 사용)
catalog, schema db catalog, schema 이름
uniqueConstraints(DDL) 유니크 제약조건
*table 전략은 select 쿼리 사용 후 update 쿼리를 사용, db와 한번 더 통신
@TableGenerator.allocationSize를 사용할 수 있다.