程序猿洞晓
Mybatis中mapper别名问题和maven依赖问题 Mybatis中mapper别名问题和maven依赖问题
又到一期挖坑填坑的时候啦,前段时间在开发一个新的项目,项目的框架逃不过三大件:Spring+Mybatis+Spring Boot。现在Spring Boot可谓是很有热度,如果是新开的项目基本都会是这个框架结构,用Spring MVC的已经很少(如果你说你们自己还在用,反驳我的说法,那我只能喊你一声杠精大哥啦)。之所以介绍一下这个……
2018-10-13
ORM框架之Mybatis(九):二级缓存源码的装饰器模式应用 ORM框架之Mybatis(九):二级缓存源码的装饰器模式应用
mybatis的缓存有一级和二级两个缓存,在默认的情况下一级缓存是开启的,但是二级缓存是关闭的需要自己去配置,首先是在mybatis-config.xml配置文件中打开二级缓存的总开关,然后就是在每个Mapper.xml文件中开启对应的二级缓存,因为二级缓存是基于命名空间,也可以变相的理解为基于一个Mapper.xml文件。在cache……
2018-09-24
ORM框架之Mybatis(八):mybatis基础代码的了解和源码跟踪 ORM框架之Mybatis(八):mybatis基础代码的了解和源码跟踪
mybatis使用在日常开发中很简单,基本没有门槛,都是和Spring直接集成,然后把之前的一些配置copy到spring的配置文件中就可以使用。具体mybatis的配置文件加载代码,已经SqlSession执行的细节都被封装到了框架中,符合面向对象编程,但是存在一个问题就是那些细节的代码慢慢都被遗忘。写这个博客就是记录……
2018-09-19
ORM框架之Mybatis(七):configuration配置源码除探 ORM框架之Mybatis(七):configuration配置源码除探
建造者模式是Java基本设计模式的一种,是经常被使用到的。比如在开发过程中经常使用的lambok插件,在实体类上加上@Builder就可以使用建造者模式方式构建实体对象。这mybatis中同样也使用到了这种设计模式,但是不是使用的lambok插件。在读取配置文件的时候,需要读取各种类型的标签,让构造器和标签对应,可以将标签的……
2018-09-15
ORM框架之Mybatis(六):logging源码实现分析 ORM框架之Mybatis(六):logging源码实现分析
mybatis框架源码的实现相对spring来说要简单的很多,模块的分工也很明确,每个模块的代码量也不是很大,比较容易阅读,如果你对设计模式很了解的话。里面用到很多设计模式,如工厂模式、代理模式、装饰器模式、适配器模式等等,都是值得平时开发学习和借鉴的,都说高手的代码都是向高级框架靠拢,谁知道他是自己设计还是看了源码学习的呢,对不?
2018-09-11
ORM框架之Mybatis(五):一级缓存和二级缓存初步认识 ORM框架之Mybatis(五):一级缓存和二级缓存初步认识
Mybatis本身提供了两个级别的缓存分别是一级缓存的二级缓存,两个缓存的实现原理都是相同的,不同的是两种缓存的作用域不同,一级缓存作用域是一个SqlSession的生命周期,SqLSession发生了flush或者close,缓存就会被清空,而二级缓存的作用域是命名空间(namespace)级别,一个命名空间下的select查询……
2018-09-07
ORM框架之Mybatis(四):映射文件resultMap标签详解 ORM框架之Mybatis(四):映射文件resultMap标签详解
Mybatis的映射文件中顶级的标签并不多,之前有说过select、update、delete、insert、sql等标签,resultMap在之前的文章也有提过,但是当时也是简单的提过,其实这个标签里面的内容很多,可简单可复杂。正常开发中简单的基本都在使用,但是涉及到复杂的用的就少啦。resultMap内和关联查询有关的标签分别是……
2018-08-31
ORM框架之Mybatis(三):动态SQL和批处理 ORM框架之Mybatis(三):动态SQL和批处理
看着标题感觉很高大上,实际上的确不算low。动态SQL是一些标签对动态拼接SQL操作的优化,使代码更加的优雅、简洁。再就是批处理,常用的就是foreach标签,但是还有另一种方式也是可以了解一下的,虽然在实际开发上不怎么用,但是知道还是必须滴,从功利来说,面试要是被问到可以用来做加分项,从心理上来说,同事间聊起来可以……
2018-08-28
ORM框架之Mybatis(二):映射文件 ORM框架之Mybatis(二):映射文件
Mybatis的mapper映射文件中有很多常用的标签,如insert、update、delete、select、resultMap、sql等,也会有很多属性,如resultType、reusltMap、parameterType、parameterMap、useGeneratedKeys、keyProperty等。相信这些在项目都有使用,但是这里还是要梳理一下(知识体系都是在不断梳理中完善和获得新知)。
2018-08-24
ORM框架之Mybatis(一):基础配置 ORM框架之Mybatis(一):基础配置
对象关系映射(ORM Obeject Relational Mapping),ORM模型就是数据库的表与简单Java对象 (POJO)的映射模型,它主要解决数据库数据和POJO对象的相互映射。早期的时候Hibernate使用的比较多,但是由于过于笨重,近几年慢慢的被Mybatis替代了。可以说现在百分之九十以上的公司都是用的Mybatis。
2018-08-16