文档章节

mybaties源码解析(org.apache.ibatis.session)session模块

lackiechan
 lackiechan
发布于 2016/12/12 17:48
字数 226
阅读 24
收藏 0

一、SqlSession :常用接口SqlSession。实现java.io.Closeable。

主要集成了

1、查询类函数 selectXXX

2、插入类函数insertXXX

3、删除类函数delete

4、事务提交commit

5、回滚rollback

6、批量更新flushStatements

7、session缓存删除clearCache

8、获取配置getConfiguration

9、根据类别获取数据库操作Mapper函数getMapper(Class<T> type);

10、数据库连接获取getConnection

三、SqlSessionFactory

SqlSession的工厂类,主要集成打开会话获取session函数和获取配置Configuration 的函数

多态函数:不同的入参获取对应类型的SqlSession

SqlSession openSession(boolean autoCommit) ,

SqlSession openSession(Connection connection);

SqlSession openSession(TransactionIsolationLevel level);

SqlSession openSession(ExecutorType execType);

SqlSession openSession(ExecutorType execType, boolean autoCommit);

SqlSession openSession(ExecutorType execType, TransactionIsolationLevel level);

SqlSession openSession(ExecutorType execType, Connection connection);

四、ExecutorType执行类型

枚举类 SIMPLE(简单), REUSE(重用), BATCH(批处理)

 

mybaties对sqlsession和sqlsessionFactory的默认实现在org.apache.ibatis.session.defaults中。开发者可以自定义扩展sqlsession。

DefaultSqlSession

 

 

 

© 著作权归作者所有

共有 人打赏支持
lackiechan
粉丝 1
博文 8
码字总数 2456
作品 0
广州
mybaties源码解析(org.apache.ibatis.session Configuration 模块

Configuration 是用户对mybaties配置维护的类,通过io模块从xml配置文件读取配置文件。 集成的api有创建执行器,结果处理器、语句处理器、参数处理器和基础属性配置,还有多个静态成员变量维护...

lackiechan
2016/12/13
19
0
mybaties源码解析(org.apache.ibatis.type)类型处理器

此模块主要是实现MyBaties数据类型和jdbc中的数据类型的转换 一、TypeHandler接口作为参数转换的基础接口: 1、设定参数函数: void setParameter(PreparedStatement ps, int i, T parameter...

lackiechan
2016/12/12
10
0
mybatis 报ExecutorException: Executor was closed.

在同一个方法里面,有两步update数据库操作,分别是库中的两张表,但这两步是一个完整事务,第一步update成功了,第二步就报了这个错误 请高手帮忙看下,可能是什么原因? 报错如下: Caused...

kenny277
2016/11/20
987
1
有没有人在Jfinal中集成MyBaties,用MyBaties代替ActiveRecord

有没有人在Jfinal中集成MyBaties,用MyBaties代替ActiveRecord? 在使用JFinal中时,如果业务是和计算相关的时候,弱对象类型的Model就有些不合适了,一个好的思路是使用类似MyBaties的方式,...

萝卜哥
2013/12/06
2.7K
10
Mybaties报错Error querying database

Mybaties我们经常用到动态SQL,如下我们利用动态去做判断,这样写当然没问题,但是当我们不是去判断orgCode(本文中orgCode一直为String类型)是否为空而是判断orgCode是否是一个值的时候该怎...

王子城
07/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

困扰当前数据中心管理的三大难题

导读 当企业发展到一定程度,或者之前的机房不能满足现在的数据中心使用时,企业会对数据中心进行迁移。那么在数据中心进行迁移的时候会遇到哪些风险呢?针对这些风险我们应该做出怎样的措施来...

问题终结者
11分钟前
0
0
设计模式:工厂方法模式(工厂模式)

工厂方法模式才是真正的工厂模式,前面讲到的静态工厂模式实际上不能说是一种真正意义上的设计模式,只是一种变成习惯。 工厂方法的类图: 这里面涉及到四个种类: 1、抽象产品: Product 2、...

京一
27分钟前
0
0
区块链和数据库,技术到底有何区别?

关于数据库和区块链,总会有很多的困惑。区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。数据库中存储信息的结构被称为表格。但是,区块链是数据库,数据库可不...

HiBlock
35分钟前
0
0
react native 开发碰到的问题

react-navigation v2 问题 问题: static navigationOptions = ({navigation, navigationOptions}) => ({ headerTitle: ( <Text style={{color:"#fff"}}>我的</Text> ), headerRight: ( <View......

罗培海
42分钟前
0
0
Mac Docker安装流程

久仰Docker大名已久,于是今天趁着有空,尝试了一下Docker 先是从docker的官网上下载下来mac版本的docker安装包,安装很简易,就直接拖图标就好了。 https://www.docker.com/products/docker...

writeademo
50分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部