摘要: mybatis 的注解,主要是用于替换映射文件。而映射文件中无非存放着增、删、改、查 的 SQL 映射标签。所以,mybatis 注解,就是要替换映射文件中的 SQL 标签。 mybatis 官方文档中指出,若要真正想发挥 mybatis 功能,还是要用映射文件。即 mybatis官方并不建议通过注 阅读全文
posted @ 2017-08-24 20:05 白日梦想家12138 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 查询缓存的使用,主要是为了提高查询访问速度。将用户对同一数据的重复查询过程简化, 不再每次均从数据库查询获取结果数据,从而提高访问速度。 MyBatis 的查询缓存机制,根据缓存区的作用域(生命周期)可划分为两种:一级查询 缓存与二级查询缓存。 一级查询缓存 MyBatis 一级查询缓存是基于 or 阅读全文
posted @ 2017-08-24 19:50 白日梦想家12138 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 延迟加载 MyBatis 中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟规则推 迟对关联对象的 select 查询。延迟加载可以有效的减少数据库压力。 需要注意的是,MyBatis 的延迟加载只是对关联对象的查询有迟延设置,对于主加载对象都是直接执行查询语句的。 需要注意的是,MyB 阅读全文
posted @ 2017-08-24 17:30 白日梦想家12138 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 关联关系查询 当查询内容涉及到具有关联关系的多个表时,就需要使用关联查询 根据表与表间的关联关系的不同,关联查询分为四种: (1)一对一关联查询 (2)一对多关联查询 (3)多对一关联查询 (4)多对多关联查询 由于日常工作中最常见的关联关系是一对多、多对一与多对多,所以这里就不专门只讲 解一对一关 阅读全文
posted @ 2017-08-24 17:08 白日梦想家12138 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 动态 SQL,主要用于解决查询条件不确定的情况:在程序运行期间,根据用户提交的查 询条件进行查询。 提交的查询条件不同,执行的 SQL 语句不同。若将每种可能的情况均逐一 列出,对所有条件进行排列组合, 将会出现大量的 SQL 语句。此时,可使用动态 SQL 来解 决这样的问题。 动态 SQL,即通 阅读全文
posted @ 2017-08-24 15:30 白日梦想家12138 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 在前面例子中自定义 Dao 接口实现类时发现一个问题:Dao 的实现类其实并没有干什么 实质性的工作, 它仅仅就是通过 SqlSession 的相关 API 定位到映射文件 mapper 中相应 id 的 SQL 语句, 真正对 DB 进行操作的工作其实是由框架通过 mapper 中的 SQL 完成 阅读全文
posted @ 2017-08-24 15:11 白日梦想家12138 阅读(181) 评论(0) 推荐(0) 编辑
摘要: resultType 可以将查询结果直接映射为实体 Bean 对象的条件是,SQL 查询的字段名与实 体 Bean 的属性名一致。 因为在将查询结果转换为指定类型对象时,系统自动将查询结果字 段名称作为对象的属性名,通过反射机制完成对象的创建。 当 SQL 查询结果的字段名和实体 Bean 的属性名 阅读全文
posted @ 2017-08-24 11:25 白日梦想家12138 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 1.插入后用新id初始化被插入对象 2.删除数据 3.修改数据 4.查询所有对象-返回List resultType 属性并非指查询结果集最后的类型,而是每查出 DB 中的一条记录,将该记录封装成为指定对象的类型 通过 selectList()方法完成查询操作,该方法会将查询出来的已经封装好的对象, 阅读全文
posted @ 2017-08-24 11:11 白日梦想家12138 阅读(264) 评论(0) 推荐(0) 编辑