1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.executor;
17
18 import java.sql.SQLException;
19 import java.util.List;
20
21 import org.apache.ibatis.cache.CacheKey;
22 import org.apache.ibatis.cursor.Cursor;
23 import org.apache.ibatis.mapping.BoundSql;
24 import org.apache.ibatis.mapping.MappedStatement;
25 import org.apache.ibatis.reflection.MetaObject;
26 import org.apache.ibatis.session.ResultHandler;
27 import org.apache.ibatis.session.RowBounds;
28 import org.apache.ibatis.transaction.Transaction;
29
30
31
32
33 public interface Executor {
34
35 ResultHandler NO_RESULT_HANDLER = null;
36
37 int update(MappedStatement ms, Object parameter) throws SQLException;
38
39 <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, CacheKey cacheKey, BoundSql boundSql) throws SQLException;
40
41 <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler) throws SQLException;
42
43 <E> Cursor<E> queryCursor(MappedStatement ms, Object parameter, RowBounds rowBounds) throws SQLException;
44
45 List<BatchResult> flushStatements() throws SQLException;
46
47 void commit(boolean required) throws SQLException;
48
49 void rollback(boolean required) throws SQLException;
50
51 CacheKey createCacheKey(MappedStatement ms, Object parameterObject, RowBounds rowBounds, BoundSql boundSql);
52
53 boolean isCached(MappedStatement ms, CacheKey key);
54
55 void clearLocalCache();
56
57 void deferLoad(MappedStatement ms, MetaObject resultObject, String property, CacheKey key, Class<?> targetType);
58
59 Transaction getTransaction();
60
61 void close(boolean forceRollback);
62
63 boolean isClosed();
64
65 void setExecutorWrapper(Executor executor);
66
67 }