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,
40 CacheKey cacheKey, BoundSql boundSql) throws SQLException;
41
42 <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler)
43 throws SQLException;
44
45 <E> Cursor<E> queryCursor(MappedStatement ms, Object parameter, RowBounds rowBounds) throws SQLException;
46
47 List<BatchResult> flushStatements() throws SQLException;
48
49 void commit(boolean required) throws SQLException;
50
51 void rollback(boolean required) throws SQLException;
52
53 CacheKey createCacheKey(MappedStatement ms, Object parameterObject, RowBounds rowBounds, BoundSql boundSql);
54
55 boolean isCached(MappedStatement ms, CacheKey key);
56
57 void clearLocalCache();
58
59 void deferLoad(MappedStatement ms, MetaObject resultObject, String property, CacheKey key, Class<?> targetType);
60
61 Transaction getTransaction();
62
63 void close(boolean forceRollback);
64
65 boolean isClosed();
66
67 void setExecutorWrapper(Executor executor);
68
69 }