미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
TableGenerator 의 경우 롤백이 되어도 시퀀스 값이 롤백되지 않는데 정상인가요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]
작성한 엔티티는 다음과 같습니다.
@Entity@Getter@Setter@NoArgsConstructor@TableGenerator( // 테이블 제너레이터를 사용하는 경우에는 반드시 @Id 명시되어 있어야 테이블 생성이 됩니다 name = "TABLE_GENERATOR", table = "SEQ_TABLE", pkColumnValue = "COL_GEN_TAB", allocationSize = 1)public class TableType { @Id @GeneratedValue(strategy = GenerationType.TABLE, generator = "TABLE_GENERATOR") private Long id; private String name; public TableType(String name) { this.name = name; }}
실행 시에 의도적으로 예외를 던져서 롤백을 했지만, SEQ_TABLE 에는 시퀀스가 롤백되지 않고 1로 늘어나 있었는데 왜 그런지 궁금합니다.
TableType table = new TableType("테이블");em.persist(table);System.out.println(table);if (table.getName().equals("테이블")) throw new RuntimeException("오류 발생");