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.mapping.BoundSql;
23 import org.apache.ibatis.mapping.MappedStatement;
24 import org.apache.ibatis.reflection.MetaObject;
25 import org.apache.ibatis.session.ResultHandler;
26 import org.apache.ibatis.session.RowBounds;
27 import org.apache.ibatis.transaction.Transaction;
28
29
30
31
32 public interface Executor {
33
34 ResultHandler NO_RESULT_HANDLER = null;
35
36 int update(MappedStatement ms, Object parameter) throws SQLException;
37
38 <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, CacheKey cacheKey, BoundSql boundSql) throws SQLException;
39
40 <E> List<E> query(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler) throws SQLException;
41
42 List<BatchResult> flushStatements() throws SQLException;
43
44 void commit(boolean required) throws SQLException;
45
46 void rollback(boolean required) throws SQLException;
47
48 CacheKey createCacheKey(MappedStatement ms, Object parameterObject, RowBounds rowBounds, BoundSql boundSql);
49
50 boolean isCached(MappedStatement ms, CacheKey key);
51
52 void clearLocalCache();
53
54 void deferLoad(MappedStatement ms, MetaObject resultObject, String property, CacheKey key, Class<?> targetType);
55
56 Transaction getTransaction();
57
58 void close(boolean forceRollback);
59
60 boolean isClosed();
61
62 void setExecutorWrapper(Executor executor);
63
64 }