随笔分类 - Mybatis相关
摘要:一、一级缓存 MyBatis 的一级缓存存在于 SqlSession 的生命周期中,在同一个 SqlSession 中查询时,MyBatis 会把执行的方法和参数通过算法生成缓存的键值,将键值和查询结果存入一个 Map对象中。如果同一个 SqlSession 中执行的方法和参数完全一致,那么通过算法
阅读全文
摘要:接上一节继续一对多的实现。上节为了介绍一对一映射,规定一个用户只能对应一个角色,其实在实际的RBAC权限系统中,一个用户往往对应多个角色,然后每个角色用对应多个权限,基于实际需求,现在通过用户-角色-权限这种一对多的关系来说明一对多映射实现方式。 一、collection 集合的嵌套结果映射 和as
阅读全文
摘要:在RBAC权限系统设计过程中,假设一个用户只有一个角色(当然实际系统并非如此) 在SysUser实体添加角色属性SysRole SysUser.java SysRole.java 一、自动映射处理一对一映射 查询sql中通过别名让Mybatis自动将值匹配到对应的字段上,简单的别名如user_nam
阅读全文
摘要:foreach属性: <foreach collection="list" open="(" close=")" separator="," item="id" index="i" > #{id}</foreach> collection : 必填,值为要选代循环的属性名。这个属性值的情况有很多。
阅读全文
摘要:一、使用JDBC方式返回主键自增的值(只适用于允许主键自增的数据库) 主要的变化是在insert标签上配置如下两个属性:useGeneratedKeys=" true"keyProperty="id" useGeneratedKeys 设置为 true 后, MyBatis 会使用 JDBC 的 g
阅读全文
摘要:属性说明 id:必填,并且唯一。 在 select 标签中, resultMap 指定的值即为此处 id 所设置的值。 type :必填,用于配置查询列所映射到的 Java 对象类型。 extends : 选填,可以配置当前的 resultMap 继承自其他的 resultMap ,属性值为继承 r
阅读全文