Mybatis
文章平均质量分 92
Mybatis
qq_33640789
这个作者很懒,什么都没留下…
展开
-
Mybatis的反射
我们都知道Mybatis是ORM框架,主要是实现数据库字段和Java对象的映射,其中用到的就是反射。Mybatis的反射是一个特别强大的模块。 Mybatis的反射这里主要介绍ObjectFactory,Reflector,ReflectorFactory,ObjectWrapper,MetaObject 一:ObjectFactory ObjectFactory主要提供了create方法,通过mapper.xml里面的对象路径反射生成对象。DefaultObjectFactory继承了Obje原创 2020-11-12 12:53:06 · 1450 阅读 · 0 评论 -
Mybatis缓存
我们都知道mybatis有一级缓存和二级缓存,当mapper.xml引入cache标签后就会开启二级缓存。二级缓存是可以多个线程共享的,一级缓存是单个线程独享的。下面笔者就Mybatis的缓存坐一些讲解。 一:Mybatis二级缓存的脏读问题 如上图开启二级缓存后DB中的数据A同时加载到了两个2级缓存,我们都知道任何的更新操作都会刷新缓存,此时如果左边的数据A修改某些属性,刷新缓存后数据库数据为修改后的数据,而右边的二级缓存还是原始数据,故造成了脏读。 二:从Mybatis源码中了解缓存 我们原创 2020-11-12 10:10:39 · 168 阅读 · 1 评论 -
Mybatis的数据库连接池
Mybatis的数据库连接池 我们都知道Mybatis是和数据库打交道的ORM框架,频繁的创建数据库连接对性能是有影响的,所以使用数据库连接池是非常有必要的。下面我们就Mybatis的DataSource做一些介绍。 一:Mybatis的datasource模块 mybatis的数据库连接池采用工厂模式创建UnpooledDataSource和PooledDataSource。代码模块位于org.apache.ibatis.datasource包下面 。提供了jndi原创 2020-10-23 17:41:37 · 1729 阅读 · 1 评论 -
Mybatis的logger
一:Mybatis第三方日志组件 我们都知道Mybatis本身是没有提供给日志的实现类,Mybatis的日志是接入了第三方的日志组件并设置了统一的四个级别:trace,warm,debug,error。Mybatis一共接入了5总日志插件并在LogFactory类的静态代码块定义了5种日志的使用顺序。 public final class LogFactory { static { tryImplementation(LogFactory::useSlf4jLogging); try原创 2020-10-15 23:22:39 · 848 阅读 · 0 评论