1. 输入映射 (就是映射文件中可以传入哪些参数类型)
1) 基本类型
2)pojo 类型
3)Vo 类型
2. 输出映射 (返回的结果集可以有哪些类型)
1) 基本类型
2)pojo 类型
3)List 类型
3. 动态 sql: 动态的拼接 sql 语句, 因为 sql 中 where 条件有可能多也有可能少
1)where: 可以自动添加 where 关键字, 还可以去掉第一个条件的 and 关键字
2)if: 判断传入的参数是否为空
3)foreach: 循环遍历传入的集合参数
4)sql: 封装查询条件, 以达到重用的目的
4. 对单个对象的映射关系:
1) 自动关联 (偷懒的办法): 可以自定义一个大而全的 pojo 类, 然后自动映射其实是根据数据库总的字段名称和
pojo 中的属性名称对应.
2) 手动关联: 需要指定数据库中表的字段名称和 java 的 pojo 类中的属性名称的对应关系.
使用 association 标签
5. 对集合对象的映射关系
只能使用手动映射: 指定表中字段名称和 pojo 中属性名称的对应关系
使用 collection 标签
6. spring 和 mybatis 整合
整合后会话工厂都归 spring 管理
1) 原生 Dao 实现:
需要在 spring 配置文件中指定 dao 实现类
dao 实现类需要继承 SqlSessionDaoSupport 超类
在 dao 实现类中不要手动关闭会话, 不要自己提交事务.
2)Mapper 接口代理实现:
在 spring 配置文件中可以使用包扫描的方式, 一次性的将所有 mapper 加载
7. 逆向工程: 自动生成 Pojo 类, 还可以自动生成 Mapper 接口和映射文件
注意: 生成的方式是追加而不是覆盖, 所以不可以重复生成, 重复生成的文件有问题.
如果想重复生成将原来生成的文件删除
来源: http://www.bubuko.com/infodetail-2910784.html