Programming/JDBC

호박고구메 2015. 2. 17. 06:05

1. 개념

 Savepoint는 한 묶음의 트랜잭션을 또 다시 몇개이 단위로 나누어 트랜잭션을 처리할 수 있도록 지원하기 위한 것이다. 트랜잭션 묶음 중간 지점에 하나의 세이브 포인트를 지정한 rollback을 수행하면, 세이브 포인트 이전까지의 작업에는 영향을 주지 않고 세이브 포인트 이후의 작업만을 취소할 수 있다.



2. 트랜잭션 savepoint와 관련된 Connection 인터페이스의 메소드


필드

설명

Savepoint setSavepoint()

현재 트랜잭션에서 이름이 지정되지 않은 Savepoint를 생성하고 해당 객체를 반환한다

Savepoint setSavepoint(String name)

현재 트랜잭션에서 주어진 이름(name)으로 Savepoint를 생성하고 해당 객체를 반환한다

void releaseSavepoint(Savepoint savepoint)

현재 트랜잭션에서 지정된 Savepoint와 이후의 Savepoint 객체를 삭제한다

void rollback(Savepoint savepoint)

주어진 Savepoint가 설정된 이후의 모든 변경을 되돌린다.



3. Savepoint 인터페이스의 메소드


필드

설명

int getSavepointId()

해당 Savepoint 객체가 나타내는 세이브 포인트의 ID를 가져온다

String getSavepointName()

해당 Savepoint 객체가 나타내는 세이브 포인트의 이름을 가져온다