[Mybatis] 수동 커밋 옵션 설정 방법
MyBatis에서 수동 커밋 옵션을 설정하려면 SqlSession
객체를 생성한 후, 커밋 및 롤백을 수동으로 처리해야 합니다. 아래에 간단한 예제를 제공하겠습니다.
SqlSessionFactory sqlSessionFactory = ...; // SqlSessionFactory 생성
// 수동 커밋 옵션으로 SqlSession 생성
SqlSession sqlSession = sqlSessionFactory.openSession(false); // false로 설정
try {
// 쿼리 실행 및 작업 수행
// 커밋 수행
sqlSession.commit();
} catch (Exception e) {
// 에러 발생 시 롤백 수행
sqlSession.rollback();
} finally {
sqlSession.close(); // SqlSession 닫기
}`
위의 예제에서 openSession(false)
메서드를 호출하여 수동 커밋 옵션을 설정합니다. 이렇게 하면 commit()
을 호출하지 않는 이상 변경 사항이 커밋되지 않습니다.
코드 블록 내에서 commit()
을 호출하여 변경 사항을 커밋하고, 에러가 발생할 경우 rollback()
을 호출하여 롤백합니다. 마지막으로 close()
메서드를 사용하여 SqlSession
을 닫아야 합니다.
수동 커밋을 사용하면 트랜잭션을 더욱 세밀하게 관리할 수 있으며, 변경 사항을 커밋하기 전에 여러 작업을 수행할 수 있습니다.