随笔 - 229
文章 - 0
评论 - 10
阅读 -
26万
随笔分类 - Mybatis
mybatis插件实现
摘要:基于mybatis-plus提供的示例环境,自定义注解和mybatis插件实现对数据库印射对象属性值进行操作 1. 自定义注解FieldTrim import java.lang.annotation.ElementType; import java.lang.annotation.Retentio
阅读全文
mybatis-plus代码生成模板
摘要:@Test public void test1(){ GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java"
阅读全文
MyBatis框架之迭代器模式
摘要:迭代器模式,一直没用过,也不会用。恰巧MyBatis框架中也使用到了迭代器模式,而且看起来还比较简单,在以后的工作中,若有需要咱们可模仿它的套路来干。 直接上代码 import java.util.Iterator; /** * @author Clinton Begin */ public cla
阅读全文
MyBatis框架之适配器模式
摘要:MyBatis框架有多处使用了设计模式,我们在阅读其源码时,需要好好体会它对设计模式的使用,以便于照着葫芦画瓢。本篇主要是记录一下适配器模式的使用。 适配器模式理解起来很简单,相当于使用了一个接口,将老旧的功能包装一下,使之适应新的需求(或许有错误,但错就错吧)。 MyBatis框架对适配器的使用,
阅读全文
mybatis框架之装饰模式
摘要:学习开源框架源码,除了储备点知识以便于与面试官互相忽略之外,我想最重要的还是去学习大神如何写代码,如何做到职责单一,如何做到可扩展等。。。 本篇,试着总结一下mybatis在缓存模块使用到的装饰模式。 或许一说到装饰模式就会扯到装饰模式四种角色,但我觉得这些都是扯蛋,没必需照本宣科,我觉得myabt
阅读全文
mybatis源码分析之06二级缓存
摘要:上一篇整合redis框架作为mybatis的二级缓存, 该篇从源码角度去分析mybatis是如何做到的。 通过上一篇文章知道,整合redis时需要在FemaleMapper.xml中添加如下配置 <cache eviction="LRU" type="qinfeng.zheng.RedisCache
阅读全文
mybatis整合redis二级缓存
摘要:mybatis默认开启了二级缓存功能,在mybatis主配置文件中,将cacheEnabled设置成false,则会关闭二级缓存功能 <settings> <!--二级缓存默认开启,false关闭--> <setting name="cacheEnabled" value="false" /> <!
阅读全文
mybatis源码分析之05一级缓存
摘要:首先需要明白,mybatis的一级缓存就是指SqlSession缓存,Map缓存! 通过前面的源码分析知道mybatis框架默认使用的是DefaultSqlSession,它是由DefaultSqlSessionFactory创建的,下面是源码 private SqlSession openSess
阅读全文
mybatis框架之动态代理
摘要:坦白讲,动态代理在日常工作中真没怎么用过,也少见别人用过,网上见过不少示例,但总觉与装饰模式差别不大,都是对功能的增强,什么前置后置,其实也就那么回事,至于面试中经常被问的mybatis框架mapper接口这一块,少不了的要扯到动态代理。说起来高深莫测,其实只是在忽略自己,或者也包括面试官吧。不过,
阅读全文
mybatis源码分析之04Mapper接口的动态代理
摘要:在工作中,使用mybatis操作数据库,只需要提供一个接口类,定义一些方法,然后调用接口里面的方法就可以CRUD,感觉是牛了一逼! 该篇就是记录一下,mybatis是如何完成这波骚操作的,即分析我们测试代码的第4行。 FemaleMapper femaleMapper = sqlSession.ge
阅读全文
mybatis源码分析之03SqlSession的创建
摘要:在上一篇中,说到了mybatis是如何构造一个SqlSessionFactory实例的,顾名思意,SqlSessionFactory就是用于创建SqlSession的工厂类。 好,现在我们接着昨天的来,mybatis框架解析完xml配置文件之后,将其封装成一个Configuration实例,然后,S
阅读全文
mybatis源码分析之02配置文件解析
摘要:该篇正式开始学习mybatis的源码,本篇主要学习mybatis是如何加载配置文件mybatis-config.xml的, 先从测试代码入手。 public class V1Test { public static void main(String[] args) { try (InputStrea
阅读全文
mybatis源码分析之01环境搭建
摘要:直接使用maven搭建一个mybatis的运行环境 1. pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w
阅读全文
springboot2集成pagehelper
摘要:springboot2集成pagehelper超级简单,本示例直接抄袭官方示例,仅将数据库由H2改成MySQL而已。 1、 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/P
阅读全文
MyBatis框架之异常处理
摘要:MyBatis框架定义了许多的异常类,之所以定义这么多的异常类,应该是将每一种异常情况都独立出来,这样在出现异常时,定位就很明确了。而我们平时写代码时,都是瞎搞一通,异常类大多也是随便定义,或者是使用JDK自带异常类,有时候甚至是直接弄Exception。缺点显而易见了。今后写代码,也应该是学着My
阅读全文