Class SqlSessionHolder

java.lang.Object
org.springframework.transaction.support.ResourceHolderSupport
org.mybatis.spring.SqlSessionHolder
All Implemented Interfaces:
org.springframework.transaction.support.ResourceHolder

public final class SqlSessionHolder extends org.springframework.transaction.support.ResourceHolderSupport
Used to keep current SqlSession in TransactionSynchronizationManager. The SqlSessionFactory that created that SqlSession is used as a key. ExecutorType is also kept to be able to check if the user is trying to change it during a TX (that is not allowed) and throw a Exception in that case.
Author:
Hunter Presnall, Eduardo Macarron
  • Constructor Summary

    Constructors
    Constructor
    Description
    SqlSessionHolder(org.apache.ibatis.session.SqlSession sqlSession, org.apache.ibatis.session.ExecutorType executorType, org.springframework.dao.support.PersistenceExceptionTranslator exceptionTranslator)
    Creates a new holder instance.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.ibatis.session.ExecutorType
    Gets the executor type.
    org.springframework.dao.support.PersistenceExceptionTranslator
    Gets the persistence exception translator.
    org.apache.ibatis.session.SqlSession
    Gets the sql session.

    Methods inherited from class org.springframework.transaction.support.ResourceHolderSupport

    clear, getDeadline, getTimeToLiveInMillis, getTimeToLiveInSeconds, hasTimeout, isOpen, isRollbackOnly, isSynchronizedWithTransaction, isVoid, released, requested, reset, resetRollbackOnly, setRollbackOnly, setSynchronizedWithTransaction, setTimeoutInMillis, setTimeoutInSeconds, unbound

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SqlSessionHolder

      public SqlSessionHolder(org.apache.ibatis.session.SqlSession sqlSession, org.apache.ibatis.session.ExecutorType executorType, org.springframework.dao.support.PersistenceExceptionTranslator exceptionTranslator)
      Creates a new holder instance.
      Parameters:
      sqlSession - the SqlSession has to be hold.
      executorType - the ExecutorType has to be hold.
      exceptionTranslator - the PersistenceExceptionTranslator has to be hold.
  • Method Details

    • getSqlSession

      public org.apache.ibatis.session.SqlSession getSqlSession()
      Gets the sql session.
      Returns:
      the sql session
    • getExecutorType

      public org.apache.ibatis.session.ExecutorType getExecutorType()
      Gets the executor type.
      Returns:
      the executor type
    • getPersistenceExceptionTranslator

      public org.springframework.dao.support.PersistenceExceptionTranslator getPersistenceExceptionTranslator()
      Gets the persistence exception translator.
      Returns:
      the persistence exception translator