摘要:
9.3.5 使用生成的代码 需要将生成工程中所生成的代码拷贝到自己的工程中。 拷这4个到我们原来的spring_mybatis1216工程下 ItemsMapper.java ItemsMapper.xml 测试ItemsMapper中的方法 ItemsMapperTest.java 9.4 逆向工 阅读全文
摘要:
9 逆向工程 9.1 什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml、po..) 企业实际开发中,常用的逆向工程方式: 由于数据库的表生成java代码。 9. 阅读全文
摘要:
8 spring和mybatis整合 8.1 整合思路 需要spring通过单例方式管理SqlSessionFactory、mapper接口。 spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(spring和mybatis整合自动完成) 阅读全文
摘要:
7.4 mybatis整合ehcache EhCache 是一个纯Java的进程内缓存框架,是一种广泛使用的开源Java分布式缓存,具有快速、精干等特点,是Hibernate中默认的CacheProvider。 7.4.1 分布缓存 我们系统为了提高系统并发,性能、一般对系统进行分布式部署(集群部署 阅读全文
摘要:
7.3 二级缓存 7.3.1 原理 下图是多个sqlSession请求UserMapper的二级缓存图解。 首先开启mybatis的二级缓存。 sqlSession1去查询用户id为1的用户信息,查询到用户信息会将查询数据存储到二级缓存中。 如果SqlSession3去执行相同 mapper下sql 阅读全文
摘要:
7 查询缓存 7.1 什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。 mybaits提供一级缓存,和二级缓存。 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的 阅读全文
摘要:
6 延迟加载 6.1 什么是延迟加载 需要查询关联信息时,使用mybatis延迟加载特性可有效的减少数据库压力,首次查询只查询主要信息,关联信息等用户获取时再加载。 resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、 阅读全文
摘要:
5 resultMap总结 resultType: 作用: 将查询结果按照sql列名pojo属性名一致性映射到pojo中。 场合: 常见一些明细记录的展示,比如用户购买商品明细,将关联查询信息全部展示在页面时,此时可直接使用resultType将每一条记录映射到pojo中,在前端页面遍历list(l 阅读全文
摘要:
4 多对多查询 4.1 需求(查询用户及用户购买商品信息) 查询用户及用户购买商品信息。 4.2 sql语句 查询主表是:用户表 关联表:由于用户和商品没有直接关联,通过订单和订单明细进行关联,所以关联表: orders、orderdetail、items 4.3 映射思路 将用户信息映射到user 阅读全文
摘要:
3 一对多查询 3.1 需求(查询订单及订单明细的信息) 查询订单及订单明细的信息。 3.2 sql语句 确定主查询表:订单表 确定关联查询表:订单明细表 在一对一查询基础上添加订单明细表关联即可。 3.3 分析 使用resultType将上边的查询结果映射到pojo中,订单信息的就是重复。 要求: 阅读全文
摘要:
2.3 方法二:resultMap 使用resultMap,定义专门的resultMap用于映射一对一查询结果。 2.3.1 sql语句 同resultType实现的sql 2.3.2 使用resultMap映射的思路 使用resultMap将查询结果中的订单信息映射到Orders对象中,在orde 阅读全文
摘要:
2 一对一查询 2.1 需求(查询所有订单信息,关联查询创建订单的用户信息) 查询所有订单信息,关联查询创建订单的用户信息 注意:因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单 阅读全文
摘要:
mybatis第二天 高级映射 查询缓存 和spring整合 课程复习: mybatis是什么? mybatis是一个持久层框架,mybatis是一个不完全的ORM框架。sql语句需要程序员自己去编写,但是mybatis也有映射(输入参数映射、输出结果映射)。 mybatis入门门槛不高,学习成本低 阅读全文