- 1、本文档共33页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mybatis第二章(朱磊)孔剖析
Touteng 安博A+精英软件人才培养工程系列教材
基于mybatis开发持久层应用
(第三阶段)
版本历史
版本 完成日期 修改人 说明
目录
第2章 MyBatis 进阶 2
核心技能部分 5
2.1 MyBatis 级联查询 5
2.1.1 什么是关联关系 5
2.1.2 关联 6
2.1.3 动态SQL 13
本章总结 18
任务实训部分 18
1:继续完善学生管理系统,对学生进行条件查询 18
2:对表Classes进行删除操作 20
3:对表Classes进行更新操作 21
巩固练习 22
2.2 Mybatis 缓存 23
2.3 Mybatis 映射器注解 26
MyBatis 进阶
学习内容
MyBatis 高级级联查询
MyBatis 集合映射、关联优化
MyBatis 动态SQL语句、存储过程
能力目标
掌握 MyBatis 高级级联查询
掌握 MyBatis 集合映射
掌握 MyBatis 动态SQL语句
了解Mybatis 存储过程
本章简介
主要讲解了Mybatis总体架构、运行原理,并且使用mybatis实现了对数据库的CRUD操作。
在面向对象设计中,数据库表之间的关系一般被设计为实体对象之间的关系,实体对象之间关系一般包括:多对一,一对多,一对一,多对多。
Mybatis在3.X之后引进了以注解形式实现简单的映射语句。
本章主要针对对象的关联关系、关联映射配置实现映射进行讲解。
核心技能部分
2.1 MyBatis 级联查询
2.1.1 什么是关联关系
关联体现的是两个类之间语义级别的一种强依赖关系比如我和我的朋友,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。
关联可以是单向、双向的。表现在代码层面,为被关联类B以类的属性形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量。在UML类图设计中,关联关系用由关联类A指向被关联类B的带箭头实线表示,在关联的两端可以标注关联双方的角色和多重性标记
在mybatis中,实体类中的关联关系直接映射sql语句。例如我们使用部门、员工表做下面映射关系。
2.1.2 关联
多对一关联查询
在mybatisConfig.xml中添加对DeptMapper.xml的引用,看代码斜体加粗部分:
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE configuration PUBLIC -////DTD Config 3.0//EN
/dtd/mybatis-3-config.dtd
configuration
properties resource=dataSperties/
environments default=development
environment id=development
transactionManager type=JDBC/
dataSource type=POOLED
property name=driver value=${driver}/
property name=url value=${url}/
property name=username value=${username}/
property name=password value=${password}/
/dataSource
/environment
/environments
mappers
mapper resource=org/mybatis/example/DeptMapper.xml/
mapper resource=org/mybatis/example/EmpMapper.xml/
/mappers
/configuration 增加映射文件(EmpMapper.xml)与映射接口(EmpMapper.java),以及实体类(Emp.java)
EmpMapper.xml的映射文件
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE mapper PUBLIC -////DTD Mapper 3.0//EN
/dtd/mybatis-3-mapper.dtd
mapper namespace=org.mybatis.example.dao.EmpMapper
resultMap type=org.mybatis.example.Emp id=getEmprsultMap
id column=empno property=empno /
文档评论(0)