![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mybatis-面试题
想到一点或遇到一点就补充一点
bobo306
这个作者很懒,什么都没留下…
展开
-
mybatis缓存
一级缓存在一个sqlSession中,对User表根据id进行两次查询,发现只打印一条查询语句在两次查询中加入增删改会触发两次查询,因为清空了一级缓存mybatis一级缓存默认开启,由BaseExecutor的createCacheKey方法来执行 CacheKey cacheKey = new CacheKey();//MappedStatement 的 id// id就是Sql语句的所在位置包名+类名+ SQL名称 cacheKey.update(ms.getId());//原创 2022-01-12 16:41:09 · 242 阅读 · 0 评论 -
mybatis初始化流程
传统开发方式首先通过Resources获取sqlMapConfig.xml和mapper.xml中的文件流InputStream resourceAsStream = Resources.class.getClassLoader.getResourceAsStream(path);之后通过SqlSessionFactoryBuilder的builder方法将字节输入流解析为Configuration,Configuration中主要包括dataSource和sql语句,封装到SqlSessio原创 2022-01-12 16:10:43 · 362 阅读 · 0 评论