public interface SqlMapClient extends SqlMapExecutor, SqlMapTransactionManager
//
// autocommit simple query --these are just examples...not patterns
//
Employee emp = (Employee) sqlMap.queryForObject("getEmployee", new Integer(1));
//
// transaction --these are just examples...not patterns
//
try {
sqlMap.startTransaction()
Employee emp2 = new Employee();
// ...set emp2 data
Integer generatedKey = (Integer) sqlMap.insert ("insertEmployee", emp2);
emp2.setFavouriteColour ("green");
sqlMap.update("updateEmployee", emp2);
sqlMap.commitTransaction();
} finally {
sqlMap.endTransaction();
}
//
// session --these are just examples...not patterns
//
try {
SqlMapSession session = sqlMap.openSession()
session.startTransaction()
Employee emp2 = new Employee();
// ...set emp2 data
Integer generatedKey = (Integer) session.insert ("insertEmployee", emp2);
emp2.setFavouriteColour ("green");
session.update("updateEmployee", emp2);
session.commitTransaction();
} finally {
try {
session.endTransaction();
} finally {
session.close();
}
// Generally your session scope would be in a wider context and therefore the
// ugly nested finally block above would not be there. Realize that sessions
// MUST be closed if explicitly opened (via openSession()).
}
//
// batch --these are just examples...not patterns
//
try {
sqlMap.startTransaction()
List list = (Employee) sqlMap.queryForList("getFiredEmployees", null);
sqlMap.startBatch ();
for (int i=0, n=list.size(); i < n; i++) {
sqlMap.delete ("deleteEmployee", list.get(i));
}
sqlMap.executeBatch();
sqlMap.commitTransaction();
} finally {
sqlMap.endTransaction();
}
SqlMapSession,
SqlMapExecutor| Modifier and Type | Method and Description |
|---|---|
void |
flushDataCache()
Flushes all data caches.
|
void |
flushDataCache(String cacheId)
Flushes the data cache that matches the cache model ID provided.
|
void |
flushEntityCache(Class<?> entityClass)
Flushes the data cache of the entity class.
|
SqlMapSession |
openSession()
Returns a single threaded SqlMapSession implementation for use by one user.
|
SqlMapSession |
openSession(Connection conn)
Returns a single threaded SqlMapSession implementation for use by one user.
|
delete, delete, executeBatch, executeBatchDetailed, insert, insert, queryForList, queryForList, queryForList, queryForList, queryForMap, queryForMap, queryForMap, queryForObject, queryForObject, queryForObject, queryForPage, queryForPage, queryWithRowHandler, queryWithRowHandler, startBatch, startBatch, update, updatedeleteArgs, insertArgs, queryForFirst, queryForFirst, queryForFirstArgs, queryForListArgs, queryForListArgs, queryForMapArgs, queryForMapArgs, queryForMapArgs, queryForObjectArgs, queryForPageArgs, queryForResultSet, queryForResultSet, queryForResultSetArgs, queryWithRowHandlerArgs, updateArgsdeleteEntity, executeDelete, executeQuery, executeQuery, executeQueryObject, executeQueryPage, executeUpdate, findEntity, getCriteriaBuilder, initEntityClass, insertEntity, updateEntitycommitTransaction, endTransaction, getCurrentConnection, getDataSource, setUserConnection, startTransaction, startTransactionSqlMapSession openSession()
SqlMapSession openSession(Connection conn)
try {
Connection connection = dataSource.getConnection();
SqlMapSession session = sqlMap.openSession(connection);
// do work
connection.commit();
} catch (SQLException e) {
try {
if (connection != null)
commit.rollback();
} catch (SQLException ignored) {
// generally ignored
}
throw e; // rethrow the exception
} finally {
try {
if (connection != null)
connection.close();
} catch (SQLException ignored) {
// generally ignored
}
}
conn - - the connection to use for the sessionvoid flushDataCache()
void flushDataCache(String cacheId)
cacheId - The cache model to flushvoid flushEntityCache(Class<?> entityClass)
entityClass - The entity class object to flush cacheCopyright © 2084–2018 dukeware.com. All rights reserved.