
mybatis学习
SourceCodeU
这个作者很懒,什么都没留下…
展开
-
mybatis 缓存(二) 二级缓存
二级缓存: 全局缓存,namespace级别的缓存 若开启了二级缓存,当一级缓存失效时,属于痛一个namespace中(同以个xml文件中)的一级缓存会在失效的同时将信息存入二级缓存中。 二级缓存的使用细节: 1.在全局配置文件中开启二级缓存(mybatis是默认开启的)<setting name="cacheEnabled" value="true"/>2.再在要开启缓存的Mapp原创 2017-07-18 15:40:08 · 472 阅读 · 0 评论 -
mybatis 缓存(一) 一级缓存
所谓缓存 指的是将与数据库的一次会话所查出的数据存入缓存中,如果之后需要查询相同的数据,就不需要继续向数据库发送sql语句,直接将数据从缓存中取出一级缓存:也叫本地缓存,是mybaits默认开启的,是sqlsession级别的缓存,每一个sqlsession对象拥有自己的一级缓存,不同的sqlsession不能共用一级缓存。因此一级缓存有几种情况下会失效: 1.使用不同的sqlsession对象原创 2017-07-18 15:14:53 · 351 阅读 · 0 评论 -
mybatis 之 动态sql(一)choose标签的使用
choose标签动态sql应用场景: 在我们查询时,动态sql可以帮我们减少编码量,用一个动态sql就可以解决之前可能要用2~3个sql语句完成的事情 例如 我们要查一个人的信息 有时候使用 id查询 而有时候则使用 名字查 按照之前的方法 我们要写两个方法,而使用动态sql只需要使用一个方法,即根据你传入的条件进行查询 传id 就通过id查 传名字就通过名字查,可能叙述的不太清楚 直原创 2017-07-17 23:39:16 · 1074 阅读 · 0 评论 -
mybatis学习之查询结果返回List以及Map
当要查询的结果不是单个记录而是一个集合的时候,mybatis的resultType写的依然是集合中的对象的类型名称,例如: <select id="getPersonByNameLike"resultType="mybatis_01.Person"> select * from person where name like #{name} </select>该模糊查询查原创 2017-07-09 00:30:13 · 21207 阅读 · 0 评论 -
mybatis 关联查询 Collection定义关联集合封装规则
应用场景 当关联查询时关联的是一个集合而不是一个对象时 例如:查询一个部门中的所有员工信息 此时使用ResultMap中的collection标签对关联的集合定义封装规则:collection嵌套结果集:<resultMap type="mybatis_02.Department" id="getDepartmentAndAllPersonById"> <id column="did"原创 2017-07-17 15:57:35 · 784 阅读 · 0 评论 -
mybatis学习之$取参数和#取参数的区别
使用#取参数: 参数在sql语句中是以预编译的形式存在的,例如 select * from person where id=?而使用$符则是直接在sql语句取出参数的值,例如select * from person where id=2因此,通常情况下,都使用#来取参数的值,但是在一些原声jdbc不支持占位符的位置,则可以使用$来获取参数的值 例如 表名、排序方式等等例:selec原创 2017-07-08 00:01:20 · 964 阅读 · 0 评论 -
mybatis 关联查询之association定义关联对象封装规则
1.使用association嵌套结果集实现关联查询:代码如下 <resultMap id="getPerson" type="mybatis_02.Person"> <id property="id" column="id" /> <result property="name" column="name"/> <result property="ge原创 2017-07-16 23:44:03 · 2079 阅读 · 0 评论 -
MyBatis学习之全局配置文件中各个标签的用途
MyBatis学习之全局配置文件中各个标签的用途 1.typeAliases标签 2.environment标签 3.settings标签 4.properties标签 5.mapper标签 6.databaseIdProvider标签原创 2017-06-24 14:58:51 · 749 阅读 · 0 评论 -
mybatis 缓存(三)缓存有关的设置以及属性
cacheEnabled: true:开启二级缓存 false:关闭二级缓存 一级缓存是一直存在的 每个select都有一个 useCache 标签:true(开启二级缓存) false(关闭二级缓存) 一级缓存一直存在 每个增删改标签都有一个flushCache标签:true(清空缓存,一级二级都清空) false:不清原创 2017-07-18 23:09:43 · 480 阅读 · 0 评论