姓名:保密
生日:1998.01.09
民族:汉
爱好:吃
理想:在某一领域留名
以下是我看过的,其中喜欢的,收集起来,以后有喜欢的还会添加,部分遗忘
生命不休,学习不止
MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生.
愿景
我们的愿景是成为 MyBatis 最好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。
虽然我们都知道有3类23种设计模式,但是大多停留在概念层面,Mybatis源码中使用了大量的设计模式,观察设计模式在其中的应用,能够更深入的理解设计模式
Mybatis至少用到了以下的设计模式的使用:
模式 | mybatis体现 |
---|---|
Builder模式 | 例如SqlSessionFactoryBuilder、Environment; |
工厂方法模式 | 例如SqlSessionFactory、TransactionFactory、LogFactory |
单例模式 | 例如 ErrorContext 和 LogFactory; |
代理模式 | Mybatis实现的核心,比如MapperProxy、ConnectionLogger,用的jdk的动态代理还有executor.loader包使用了 cglib或者javassist达到延迟加载的效果 |
组合模式 | 例如SqlNode和各个子类ChooseSqlNode等; |
模板方法模式 | 例如 BaseExecutor 和 SimpleExecutor,还有 BaseTypeHandler 和所有的子类例如IntegerTypeHandler; |
适配器模式 | 例如Log的Mybatis接口和它对jdbc、log4j等各种日志框架的适配实现; |
装饰者模式 | 例如Cache包中的cache.decorators子包中等各个装饰者的实现; |
迭代器模式 | 例如迭代器模式PropertyTokenizer; |
1.在一个sqlSession中,对User表根据id进行两次查询,查看他们发出sql语句的情况
1 | @Test |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true