격리수준

설명 

 ISOLATION_DEFAULT

PlatformTransactionManager 기본 격리수준으로 대부분의 데이터베이스에 ISOLATION_READ_COMMITTED 적용된다

 ISOLATION_READ_UNCOMMITTED

가장 낮은 수준의 격리수준이다. , 트랜잭션이 수정한 데이터는 심지어 커밋하기도 전에 다른 트랜잭션이 있기 때문에 실제로 이것을 격리수준이라고 부를 수는 없다. 또한 트랜잭션은 다른 트랜잭션이 커밋을 하기 전에 변경내용ㅇ을 볼수있다

 ISOLATION_READ_COMMITED

대부분의 데이터베이스에서 지원하는 기본 격리수준으로 트랜잭션이 완료하기 전에는 데이터에 대한 수정사항을 다른 트랜잭션들이 없도록 명시한다. 하지만 다른 트랜잭션이 커밋한 입력/ 수정 데이터를 조회 할수이 ㅆ다. 이것은 다른 트랜잭션이 수정한 데이터를 있기 때문에 트랜잭션의 시점에 따라 다른 데이터를 있다는 것을 의미한다

 ISOLATION_REPEATABLE_READ

ISOLATION_READ_COMMITTED보다 엄격한 격리수준으로 트랜잭션 내에서 데이터를 조회하는 경우 다른 트랜잭션이 조회 대상 데이터를 변경하였다고 하더라도 적어도 처음과 동일한 데이터를 조회할 있도록 ㅈ보장해준다. 그러나 다른 트랜잭션이 새로운 데이터를 입력하였다면 새롭게 입력된 데이터를 조회할 있게 된다

 ISOLATION_SERIALZBLE

가장 비용이 많이 들고 신뢰도가 높은 격리수준이다. 모든 트랜잭션은 한번에 하나씩 순차적으로 실행된다