mybatis-17-Mybatis 一级缓存,二级缓存详解。
Mybatis 缓存
概念
MyBatis的缓存分为一级缓存和二级缓存,两种缓存的缓存粒度是一样的,都是对应一条sql查询语句,但是二者的生命周期是不一样的,一级缓存的生命周期是SqlSession对象的使用期间,随着SqlSession对象的死亡而消失;
二级缓存的生命周期是同 MyBatis 应用一样长的。
一级缓存
官方配置
开启情况
默认情况下是没有开启缓存的,除了局部...
2016-07-27 02:40:05 |
Cache
mybatis-12-Mybatis Generator 代码生成
Mybatis Generator
Use zh_CN
Code
You need mybatis-generator-core.jar and mysql-connector-java.jar.
Then, use schema.sql to create table in your mysql.
use mvn mybatis-generator:generate to...
2016-07-27 02:40:05 |
SQL
mybatis-11-Mybatis 查询结果为 null,实际 sql 查询有值
现象
今天使用 mybatis 查询列表,结果查出的是一个有 size 的列表,但是内容都是 null。
分析
实际为 null
最先想到的是 sql 有问题,执行了一遍发现结果是有值的。
使用了继承
网上还有一种说法,说是使用了继承。
导致反射可能没有值,看了下代码,model 类是没有继承的。
ResultType 与 ResultMap
后来看了一遍文章,
原因:
...
2016-07-27 02:40:05 |
SQL
mybatis-10-Mybatis-mapper 映射器
XML 映射器
MyBatis 的真正强大在于它的语句映射,这是它的魔力所在。
由于它的异常强大,映射器的 XML 文件就显得相对简单。
如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。
MyBatis 致力于减少使用成本,让用户能更专注于 SQL 代码。
SQL 映射文件只有很少的几个顶级元素(按照应被定义的顺序列出):
cache –...
2016-07-27 02:40:05 |
SQL
Mybatis-09-多数据源配置下,解决 org.apache.ibatis.binding.BindingException Invalid bound statement (not found)问题
异常
本来 springboot 配置 mysql 配置正常,后来新加入了其他数据源,发现报错:
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
解决方案
多数据源配置下,解决 org.apache.ibatis.binding.BindingException I...
2016-07-27 02:40:05 |
SQL
Mybatis-08-mybatis selectKey 赋值未生效,为什么?
Statement配置如下:
<insert id="insertStatemnet" parameterType="User">
insert into user ( user_name )
values (#{user#userName})
<selectKey resultType="long" order="AFTER"...
2016-07-27 02:40:05 |
SQL
Mybatis-07-SQL 语句构建器
问题
Java 程序员面对的最痛苦的事情之一就是在 Java 代码中嵌入 SQL 语句。
这通常是因为需要动态生成 SQL 语句,不然我们可以将它们放到外部文件或者存储过程中。
如你所见,MyBatis 在 XML 映射中具备强大的 SQL 动态生成能力。
但有时,我们还是需要在 Java 代码里构建 SQL 语句。
此时,MyBatis 有另外一个特性可以帮到你,让你从处理典型问...
2016-07-27 02:40:05 |
SQL
Mybatis-06-java-api
Java API
既然你已经知道如何配置 MyBatis 以及如何创建映射,是时候来尝点甜头了。
MyBatis 的 Java API 就是这个甜头。
稍后你将看到,和 JDBC 相比,MyBatis 大幅简化你的代码并力图保持其简洁、容易理解和维护。为了使得 SQL 映射更加优秀,MyBatis 3 引入了许多重要的改进。
目录结构
在我们深入 Java API 之前,理解关于目...
2016-07-27 02:40:05 |
SQL