org.apache.ibatis.session
Interface SqlSession

All Known Implementing Classes:
DefaultSqlSession, SqlSessionManager

public interface SqlSession

The primary Java interface for working with MyBatis. Through this interface you can execute commands, get mappers and manage transactions.


Method Summary
 void clearCache()
          Clears local session cache
 void close()
          Closes the session
 void commit()
          Flushes batch statements and commits database connection.
 void commit(boolean force)
          Flushes batch statements and commits database connection.
 int delete(String statement)
          Execute a delete statement.
 int delete(String statement, Object parameter)
          Execute a delete statement.
 List<BatchResult> flushStatements()
          Flushes batch statements.
 Configuration getConfiguration()
          Retrieves current configuration
 Connection getConnection()
          Retrieves inner database connection
<T> T
getMapper(Class<T> type)
          Retrieves a mapper.
 int insert(String statement)
          Execute an insert statement.
 int insert(String statement, Object parameter)
          Execute an insert statement with the given parameter object.
 void rollback()
          Discards pending batch statements and rolls database connection back.
 void rollback(boolean force)
          Discards pending batch statements and rolls database connection back.
 void select(String statement, Object parameter, ResultHandler handler)
          Retrieve a single row mapped from the statement key and parameter using a ResultHandler.
 void select(String statement, Object parameter, RowBounds rowBounds, ResultHandler handler)
          Retrieve a single row mapped from the statement key and parameter using a ResultHandler and RowBounds
 void select(String statement, ResultHandler handler)
          Retrieve a single row mapped from the statement using a ResultHandler.
<E> List<E>
selectList(String statement)
          Retrieve a list of mapped objects from the statement key and parameter.
<E> List<E>
selectList(String statement, Object parameter)
          Retrieve a list of mapped objects from the statement key and parameter.
<E> List<E>
selectList(String statement, Object parameter, RowBounds rowBounds)
          Retrieve a list of mapped objects from the statement key and parameter, within the specified row bounds.
<K,V> Map<K,V>
selectMap(String statement, Object parameter, String mapKey)
          The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects.
<K,V> Map<K,V>
selectMap(String statement, Object parameter, String mapKey, RowBounds rowBounds)
          The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects.
<K,V> Map<K,V>
selectMap(String statement, String mapKey)
          The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects.
<T> T
selectOne(String statement)
          Retrieve a single row mapped from the statement key
<T> T
selectOne(String statement, Object parameter)
          Retrieve a single row mapped from the statement key and parameter.
 int update(String statement)
          Execute an update statement.
 int update(String statement, Object parameter)
          Execute an update statement.
 

Method Detail

selectOne

<T> T selectOne(String statement)
Retrieve a single row mapped from the statement key

Type Parameters:
T - the returned object type
Parameters:
statement -
Returns:
Mapped object

selectOne

<T> T selectOne(String statement,
                Object parameter)
Retrieve a single row mapped from the statement key and parameter.

Type Parameters:
T - the returned object type
Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
Returns:
Mapped object

selectList

<E> List<E> selectList(String statement)
Retrieve a list of mapped objects from the statement key and parameter.

Type Parameters:
E - the returned list element type
Parameters:
statement - Unique identifier matching the statement to use.
Returns:
List of mapped object

selectList

<E> List<E> selectList(String statement,
                       Object parameter)
Retrieve a list of mapped objects from the statement key and parameter.

Type Parameters:
E - the returned list element type
Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
Returns:
List of mapped object

selectList

<E> List<E> selectList(String statement,
                       Object parameter,
                       RowBounds rowBounds)
Retrieve a list of mapped objects from the statement key and parameter, within the specified row bounds.

Type Parameters:
E - the returned list element type
Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
rowBounds - Bounds to limit object retrieval
Returns:
List of mapped object

selectMap

<K,V> Map<K,V> selectMap(String statement,
                         String mapKey)
The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects. Eg. Return a of Map[Integer,Author] for selectMap("selectAuthors","id")

Type Parameters:
K - the returned Map keys type
V - the returned Map values type
Parameters:
statement - Unique identifier matching the statement to use.
mapKey - The property to use as key for each value in the list.
Returns:
Map containing key pair data.

selectMap

<K,V> Map<K,V> selectMap(String statement,
                         Object parameter,
                         String mapKey)
The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects.

Type Parameters:
K - the returned Map keys type
V - the returned Map values type
Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
mapKey - The property to use as key for each value in the list.
Returns:
Map containing key pair data.

selectMap

<K,V> Map<K,V> selectMap(String statement,
                         Object parameter,
                         String mapKey,
                         RowBounds rowBounds)
The selectMap is a special case in that it is designed to convert a list of results into a Map based on one of the properties in the resulting objects.

Type Parameters:
K - the returned Map keys type
V - the returned Map values type
Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
mapKey - The property to use as key for each value in the list.
rowBounds - Bounds to limit object retrieval
Returns:
Map containing key pair data.

select

void select(String statement,
            Object parameter,
            ResultHandler handler)
Retrieve a single row mapped from the statement key and parameter using a ResultHandler.

Parameters:
statement - Unique identifier matching the statement to use.
parameter - A parameter object to pass to the statement.
handler - ResultHandler that will handle each retrieved row

select

void select(String statement,
            ResultHandler handler)
Retrieve a single row mapped from the statement using a ResultHandler.

Parameters:
statement - Unique identifier matching the statement to use.
handler - ResultHandler that will handle each retrieved row

select

void select(String statement,
            Object parameter,
            RowBounds rowBounds,
            ResultHandler handler)
Retrieve a single row mapped from the statement key and parameter using a ResultHandler and RowBounds

Parameters:
statement - Unique identifier matching the statement to use.
rowBounds - RowBound instance to limit the query results
handler - ResultHandler that will handle each retrieved row

insert

int insert(String statement)
Execute an insert statement.

Parameters:
statement - Unique identifier matching the statement to execute.
Returns:
int The number of rows affected by the insert.

insert

int insert(String statement,
           Object parameter)
Execute an insert statement with the given parameter object. Any generated autoincrement values or selectKey entries will modify the given parameter object properties. Only the number of rows affected will be returned.

Parameters:
statement - Unique identifier matching the statement to execute.
parameter - A parameter object to pass to the statement.
Returns:
int The number of rows affected by the insert.

update

int update(String statement)
Execute an update statement. The number of rows affected will be returned.

Parameters:
statement - Unique identifier matching the statement to execute.
Returns:
int The number of rows affected by the update.

update

int update(String statement,
           Object parameter)
Execute an update statement. The number of rows affected will be returned.

Parameters:
statement - Unique identifier matching the statement to execute.
parameter - A parameter object to pass to the statement.
Returns:
int The number of rows affected by the update.

delete

int delete(String statement)
Execute a delete statement. The number of rows affected will be returned.

Parameters:
statement - Unique identifier matching the statement to execute.
Returns:
int The number of rows affected by the delete.

delete

int delete(String statement,
           Object parameter)
Execute a delete statement. The number of rows affected will be returned.

Parameters:
statement - Unique identifier matching the statement to execute.
parameter - A parameter object to pass to the statement.
Returns:
int The number of rows affected by the delete.

commit

void commit()
Flushes batch statements and commits database connection. Note that database connection will not be committed if no updates/deletes/inserts were called. To force the commit call commit(boolean)


commit

void commit(boolean force)
Flushes batch statements and commits database connection.

Parameters:
force - forces connection commit

rollback

void rollback()
Discards pending batch statements and rolls database connection back. Note that database connection will not be rolled back if no updates/deletes/inserts were called. To force the rollback call rollback(boolean)


rollback

void rollback(boolean force)
Discards pending batch statements and rolls database connection back. Note that database connection will not be rolled back if no updates/deletes/inserts were called.

Parameters:
force - forces connection rollback

flushStatements

List<BatchResult> flushStatements()
Flushes batch statements.

Returns:
BatchResult list of updated records
Since:
3.0.6

close

void close()
Closes the session


clearCache

void clearCache()
Clears local session cache


getConfiguration

Configuration getConfiguration()
Retrieves current configuration

Returns:
Configuration

getMapper

<T> T getMapper(Class<T> type)
Retrieves a mapper.

Type Parameters:
T - the mapper type
Parameters:
type - Mapper interface class
Returns:
a mapper bound to this SqlSession

getConnection

Connection getConnection()
Retrieves inner database connection

Returns:
Connection


Copyright © 2010-2012 MyBatis.org. All Rights Reserved.