博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis的接口层(一)
阅读量:6244 次
发布时间:2019-06-22

本文共 2034 字,大约阅读时间需要 6 分钟。

hot3.png

 

SqlSession 是Mybatis的核心接口之一,也是Mybatis 接口层的主要组成部分,对外提供常用的API。类图如下

192008_Owjs_3218528.png

在SqlSession中定义了常用数据库的操作以及事物的相关操作,为了方便用户使用,每种操作类型操作都提供了多种重载。

package org.apache.ibatis.session;import java.io.Closeable;import java.sql.Connection;import java.util.List;import java.util.Map;import org.apache.ibatis.cursor.Cursor;import org.apache.ibatis.executor.BatchResult;public interface SqlSession extends Closeable {   // 定位到具体的SQL,返回值为查询结果对象  
T selectOne(String statement); // 定位到具体的SQL,传入参数
T selectOne(String statement, Object parameter); // 查询结果会有多条返回记录
List
selectList(String statement); // 同上
List
selectList(String statement, Object parameter); // 返回结果为Map
Map
selectMap(String statement, String mapKey); //
Map
selectMap(String statement, Object parameter, String mapKey);
Map
selectMap(String statement, Object parameter, String mapKey, RowBounds rowBounds); // 返回游标对象
Cursor
selectCursor(String statement);
Cursor
selectCursor(String statement, Object parameter);
Cursor
selectCursor(String statement, Object parameter, RowBounds rowBounds); // 查询结果有此处指定的ResultHandler 对象处理 void select(String statement, Object parameter, ResultHandler handler); void select(String statement, ResultHandler handler); void select(String statement, Object parameter, RowBounds rowBounds, ResultHandler handler); // 执行插入语句 int insert(String statement); int insert(String statement, Object parameter); int update(String statement); int update(String statement, Object parameter); int delete(String statement); int delete(String statement, Object parameter); // 提交事务 void commit(); void commit(boolean force); // 回滚事务 void rollback(); void rollback(boolean force); // 刷新到数据库 List
flushStatements(); // 关闭当前session @Override void close(); // 清空缓存 void clearCache(); // 获取Configuration 对象 Configuration getConfiguration(); // 获取 type 对应的mapper 对象
T getMapper(Class
type); // 获取对应的数据库连接 Connection getConnection();}

 

转载于:https://my.oschina.net/u/3218528/blog/1629016

你可能感兴趣的文章
量子通信和大数据最有市场突破前景
查看>>
如何申请开通微信多客服功能
查看>>
非监督学习算法:异常检测
查看>>
jquery的checkbox,radio,select等方法总结
查看>>
Linux coredump
查看>>
Ubuntu 10.04安装水晶(Mercury)无线网卡驱动
查看>>
我的友情链接
查看>>
ElasticSearch 2 (32) - 信息聚合系列之范围限定
查看>>
VS2010远程调试C#程序
查看>>
windows查看端口占用
查看>>
Yii用ajax实现无刷新检索更新CListView数据
查看>>
App 卸载记录
查看>>
JavaScript变量和作用域
查看>>
开源SIP服务器加密软件NethidPro升级
查看>>
Apache Pulsar中的地域复制,第1篇:概念和功能
查看>>
python pip install 出现 OSError: [Errno 1] Operation not permitted
查看>>
南京大学周志华教授当选欧洲科学院外籍院士
查看>>
计算机网络与Internet应用
查看>>
oracle在线迁移同步数据,数据库报错
查看>>
linux性能剖析工具
查看>>