
Mybatis
lby0307
这个作者很懒,什么都没留下…
展开
-
Mybatis拦截器实现分页
本文介绍使用Mybatis拦截器,实现分页;并且在dao层,直接返回自定义的分页对象。2017-09-29修改:添加Mybatis拦截器分页对oracle、sqlServer的支持最终dao层结果:123public interface ModelMapper { Page pageByC转载 2017-11-08 21:44:56 · 248 阅读 · 0 评论 -
自己手写一个Mybatis框架(简化)
一、Mybatis框架流程简介 在手写自己的Mybatis框架之前,我们先来了解一下Mybatis,它的源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,才能够更深入的理解源码(ref:Mybatis源码解读-设计模式总结)。我们对上图进行分析总结:mybatis的配置文件有2类mybatisconfig.xml,配置文件的名称不是固定的,配置了...转载 2018-04-14 21:51:02 · 270 阅读 · 0 评论 -
Mybatis事务下解决多次select语句查询结果一致的问题+案列(获取全局序列ID)
这个问题困扰我有一段时间了,问题应用的场景是:数据库有三张表,两两之间是互相关联的,关联的ID就是各个Table中的主键ID;涉及多表的关系插入,显然在创建表的时候,表的主键ID不能设置成自增(MySql下,auto_increament)键,而且自增主键在并发的场景下,同一时刻如果产生了两个一样的主键ID,是不是insert的时候服务就要崩掉了,就算在事物控制下也会造成用户数据的丢失,非常不友好...转载 2018-07-25 11:43:38 · 2266 阅读 · 0 评论 -
@SelectProvider,@Select和xml用法的一点理解
1.@Select同@select功能类似的还有@insert,@delete,@update,对应于数据库语句的CRUD。使用@select很方便,不用写配置文件,一般是写在mapper的interface类中,用法如下:public interface AdmainMapper{@Select("SELECT * FROM userinfo WHERE username = #{...转载 2018-07-25 14:16:58 · 5154 阅读 · 0 评论 -
Mybatis执行流程分析(源码篇)
1. SqlSessionFactory 与 SqlSession. 通过前面的章节对于mybatis 的介绍及使用,大家都能体会到SqlSession的重要性了吧, 没错,从表面上来看,咱们都是通过SqlSession去执行sql语句(注意:是从表面看,实际的待会儿就会讲)。那么咱们就先看看是怎么获取SqlSession的吧:(1)首先,SqlSessionFactoryBuild...转载 2019-03-12 22:43:54 · 188 阅读 · 0 评论