mybatis由浅入深day02_9.3.5使用生成的代码_9.4逆向工程注意事项
摘要:9.3.5 使用生成的代码 需要将生成工程中所生成的代码拷贝到自己的工程中。 拷这4个到我们原来的spring_mybatis1216工程下 ItemsMapper.java ItemsMapper.xml 测试ItemsMapper中的方法 ItemsMapperTest.java 9.4 逆向工
阅读全文
posted @
2017-12-17 19:33
未来_我来
阅读(475)
推荐(0) 编辑
mybatis由浅入深day02_9逆向工程
摘要:9 逆向工程 9.1 什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml、po..) 企业实际开发中,常用的逆向工程方式: 由于数据库的表生成java代码。 9.
阅读全文
posted @
2017-12-17 19:27
未来_我来
阅读(233)
推荐(0) 编辑
mybatis由浅入深day02_8spring和mybatis整合
摘要:8 spring和mybatis整合 8.1 整合思路 需要spring通过单例方式管理SqlSessionFactory、mapper接口。 spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(spring和mybatis整合自动完成)
阅读全文
posted @
2017-12-17 18:22
未来_我来
阅读(270)
推荐(0) 编辑
mybatis由浅入深day02_7.4mybatis整合ehcache_7.5二级缓存应用场景_7.6二级缓存局限性
摘要:7.4 mybatis整合ehcache EhCache 是一个纯Java的进程内缓存框架,是一种广泛使用的开源Java分布式缓存,具有快速、精干等特点,是Hibernate中默认的CacheProvider。 7.4.1 分布缓存 我们系统为了提高系统并发,性能、一般对系统进行分布式部署(集群部署
阅读全文
posted @
2017-12-17 18:14
未来_我来
阅读(251)
推荐(0) 编辑
mybatis由浅入深day02_7.3二级缓存
摘要:7.3 二级缓存 7.3.1 原理 下图是多个sqlSession请求UserMapper的二级缓存图解。 首先开启mybatis的二级缓存。 sqlSession1去查询用户id为1的用户信息,查询到用户信息会将查询数据存储到二级缓存中。 如果SqlSession3去执行相同 mapper下sql
阅读全文
posted @
2017-12-17 18:08
未来_我来
阅读(178)
推荐(0) 编辑
mybatis由浅入深day02_7查询缓存_7.2一级缓存_一级缓存应用
摘要:7 查询缓存 7.1 什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。 mybaits提供一级缓存,和二级缓存。 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的
阅读全文
posted @
2017-12-17 18:03
未来_我来
阅读(257)
推荐(0) 编辑
mybatis由浅入深day02_6延迟加载_延迟加载总结
摘要:6 延迟加载 6.1 什么是延迟加载 需要查询关联信息时,使用mybatis延迟加载特性可有效的减少数据库压力,首次查询只查询主要信息,关联信息等用户获取时再加载。 resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、
阅读全文
posted @
2017-12-17 17:59
未来_我来
阅读(184)
推荐(0) 编辑
mybatis由浅入深day02_5resultMap总结
摘要:5 resultMap总结 resultType: 作用: 将查询结果按照sql列名pojo属性名一致性映射到pojo中。 场合: 常见一些明细记录的展示,比如用户购买商品明细,将关联查询信息全部展示在页面时,此时可直接使用resultType将每一条记录映射到pojo中,在前端页面遍历list(l
阅读全文
posted @
2017-12-17 17:53
未来_我来
阅读(199)
推荐(0) 编辑
mybatis由浅入深day02_4多对多查询_多对多查询总结
摘要:4 多对多查询 4.1 需求(查询用户及用户购买商品信息) 查询用户及用户购买商品信息。 4.2 sql语句 查询主表是:用户表 关联表:由于用户和商品没有直接关联,通过订单和订单明细进行关联,所以关联表: orders、orderdetail、items 4.3 映射思路 将用户信息映射到user
阅读全文
posted @
2017-12-17 17:52
未来_我来
阅读(242)
推荐(0) 编辑
mybatis由浅入深day02_3一对多查询
摘要:3 一对多查询 3.1 需求(查询订单及订单明细的信息) 查询订单及订单明细的信息。 3.2 sql语句 确定主查询表:订单表 确定关联查询表:订单明细表 在一对一查询基础上添加订单明细表关联即可。 3.3 分析 使用resultType将上边的查询结果映射到pojo中,订单信息的就是重复。 要求:
阅读全文
posted @
2017-12-17 17:47
未来_我来
阅读(166)
推荐(0) 编辑
mybatis由浅入深day02_2一对一查询_2.3方法二:resultMap_resultType和resultMap实现一对一查询小结
摘要:2.3 方法二:resultMap 使用resultMap,定义专门的resultMap用于映射一对一查询结果。 2.3.1 sql语句 同resultType实现的sql 2.3.2 使用resultMap映射的思路 使用resultMap将查询结果中的订单信息映射到Orders对象中,在orde
阅读全文
posted @
2017-12-17 17:43
未来_我来
阅读(227)
推荐(0) 编辑
mybatis由浅入深day02_2一对一查询_2.2方法一:resultType
摘要:2 一对一查询 2.1 需求(查询所有订单信息,关联查询创建订单的用户信息) 查询所有订单信息,关联查询创建订单的用户信息 注意:因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单
阅读全文
posted @
2017-12-17 17:39
未来_我来
阅读(206)
推荐(0) 编辑
mybatis由浅入深day02_课程复习_1订单商品数据模型分析
摘要:mybatis第二天 高级映射 查询缓存 和spring整合 课程复习: mybatis是什么? mybatis是一个持久层框架,mybatis是一个不完全的ORM框架。sql语句需要程序员自己去编写,但是mybatis也有映射(输入参数映射、输出结果映射)。 mybatis入门门槛不高,学习成本低
阅读全文
posted @
2017-12-17 17:35
未来_我来
阅读(373)
推荐(0) 编辑
mybatis由浅入深day01_9动态sql(9.5sql片段_9.6foreach)
摘要:9 动态sql 9.1 什么是动态sql mybatis核心 对sql语句进行灵活操作,通过表达式进行判断,对sql进行灵活拼接、组装。 9.2 需求 用户信息综合查询列表和用户信息查询列表总数这两个statement的定义使用动态sql。 对查询条件进行判断,如果输入参数不为空才进行查询条件拼接。
阅读全文
posted @
2017-12-15 00:18
未来_我来
阅读(224)
推荐(0) 编辑
mybatis由浅入深day01_8.2resultMap
摘要:8.2 resultMap mybatis中使用resultMap完成高级输出结果映射。 resultType可以指定pojo将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。 如果sql查询字段名和pojo的属性名不一致,可以通过resultMap将字段名和属性名
阅读全文
posted @
2017-12-15 00:10
未来_我来
阅读(204)
推荐(0) 编辑
mybatis由浅入深day01_8输出映射_8.1resultType输出类型(8.1.1输出简单类型_8.1.2输出pojo对象和pojo列表_8.1.3输出hashmap)
摘要:8 输出映射 8.1 resultType(输出类型) 使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。 如果查询出来的列名和pojo中的属性名全部不一致,没有创建pojo对象。 只要查询出来的列名和pojo中的属性有一个一致,就会创建pojo对
阅读全文
posted @
2017-12-15 00:06
未来_我来
阅读(344)
推荐(0) 编辑
mybatis由浅入深day01_ 7输入映射(7.1传递pojo的包装对象_7.2#{}与${}_7.3传递简单类型_7.4传递pojo对象_7.5传递hashmap)
摘要:7 输入映射 通过parameterType指定输入参数的类型,类型可以是简单类型、hashmap、pojo的包装类型。 7.1 传递pojo的包装对象 7.1.1 需求 完成用户信息的综合查询,需要传入查询条件很复杂(可能包括用户信息、其它信息,比如商品、订单的) 7.1.2 定义包装类型pojo
阅读全文
posted @
2017-12-14 23:58
未来_我来
阅读(297)
推荐(0) 编辑
mybatis由浅入深day01_6SqlMapConfig.xml(6.2settings全局参数配置_6.3typeAliases(类型别名)_6.4typeHandlers(类型处理器)_6.5mappers(映射配置))
摘要:6 SqlMapConfig.xml mybatis的全局配置文件SqlMapConfig.xml,配置内容和顺序如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂)
阅读全文
posted @
2017-12-14 23:44
未来_我来
阅读(189)
推荐(0) 编辑
mybatis由浅入深day01_5.3 Mapper动态代理方法
摘要:5.3 Mapper动态代理方法(程序员只需要写mapper接口(相当于dao接口)) 5.3.1 实现原理(mapper代理开发规范) 程序员还需要编写mapper.xml映射文件 程序员编写mapper接口(相当于Dao接口)需要遵循一些开发规范,mybatis可以自动生成mapper接口实现类
阅读全文
posted @
2017-12-14 23:35
未来_我来
阅读(201)
推荐(0) 编辑
mybatis由浅入深day01_5mybatis开发dao的方法(5.1SqlSession使用范围_5.2原始dao开发方法)
摘要:5 mybatis开发dao的方法 5.1 SqlSession使用范围 5.1.1 SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory 将SqlSessionFactoryBuilder当成一个工具类
阅读全文
posted @
2017-12-14 23:26
未来_我来
阅读(173)
推荐(0) 编辑