【SQL开源代码栏目提醒】:网学会员鉴于大家对SQL开源代码十分关注,论文会员在此为大家搜集整理了“Mybatis基础PPT教程 - 产品手册”一文,供大家参考学习
Mybatis技术简介 dezhaosgmail.comMyBatis的前世今生 MyBatis的前身就是iBatisiBatis本是由Clinton Begin开发,后来捐给Apache基金会,成立了 iBatis
开源项目。
2010年5月该项目由Apahce基金 会迁移到了Google Code,并且改名为MyBatis。
MyBatis介绍 MyBatis是一个数据持久层ORM框架。
把实体 类和
SQL语句之间建立了映射关系,是一种半自 动化的ORM实现。
MyBatis的优点: 1.基于
SQL语法,简单易学。
2.能了解底层组装过程。
3.
SQL语句封装在配置文件中,便于统一管理与 维护,降低了程序的耦合度。
4.程序调试方便。
与传统JDBC的比较 减少了61的
代码量 最简单的持久化框架 架构级性能增强
SQL代码从程序
代码中彻底分离,可重用 增强了项目中的分工 增强了移植性JDBC 与 MyBatis直观对比 MyBatis 就是将上面这几行
代码分解包装: 前两行是对数据库的数据源的管理包括事务管理, 3、4 两行MyBatis通过配置文件来管理
SQL 以及输入参数 的映射, 6、7、8 行MyBatis获取返回结果到 Java 对象的映射,也是 通过配置文件管理。
与Hibernate的对比 MyBatis Hibernate 1、是一个
SQL语句映射 1、主流的ORM框架、提 的框架(工具) 供了从 POJO 到数据库表 的全套映射机制 2、注重POJO与
SQL之间 的映射关系。
不会为程序 2、会自动生成全套
SQL 员在运行期自动生成
SQL 语句。
3、自动化程度低、手工 3、因为自动化程度高、 映射
SQL灵活程度高. 映射配置复杂,api也相对 复杂,灵活性低. 4、需要开发人员熟炼掌 据
SQL语句 4、开发人同不必关注
SQL底层语句开发MyBatis与Hibernate的比较 Hibernate的映射关系:MyBatis与Hibernate的比较 MyBatis的映射关系:MyBatis工作流程MyBatis基本要素 一、configuration.xml 全局配置文件 二、mapper.xml 核心映射文件 三、SqlSession接口基础配置文件configuration.xmlconfiguration.xml是系统的核心配置文件,包含数据源和事务管理器 等设置和属性信息,XML文档结构如下: configuration 配置 properties 可以配置在Java 属性配置文件中 settings 修改 MyBatis 在运行时的行为方式 typeAliases 为 Java 类型命名一个短的名字 typeHandlers 类型处理器 objectFactory 对象工厂 plugins 插件 environments 环境 environment 环境变量 transactionManager 事务管理器 dataSource 数据源 mappers 映射器基础配置文件—环境配置 配置环境 ……基础配置文件—事务管理MyBatis 有两种事务管理类型: JDBC - 这个类型直接全部使用 JDBC 的提交和 回滚功能。
它依靠使用连接的数据源来管理事务 的作用域。
MANAGED - 这个类型什么不做 , 它从不提交 、 回滚和关闭连接 。
而是让窗口来管理事务的全部 生命周期 。
(比如说 Spring 或者 JAVAEE 服务 器)基础配置文件—数据源数据源类型有三种: UNPOOLED , POOLED , JNDI 。
UNPOOLED - 这个数据源实现只是在每次请求的时候简单的打开 和关闭一个连接。
虽然这有点慢,但作为一些不需要性能和立即 响应的简单应用来说 , 不失为一种好选择 。
POOLED - 这个数据源缓存 JDBC 连接对象用于避免每次都要连 接和生成连接实例而需要的验证时间 。
对于并发 WEB 应用,这 种方式非常流行因为它有最快的响应时间。
JNDI - 这个数据源实现是为了准备和 Spring 或应用服务一起使用, 可以在外部也可以在内部配置这个数据源,然后在 JNDI 上下文中 引用它。
这个数据源配置只需要两上属性:基础配置文件—
SQL映射文件
SQL映射文件://1.使用相对路径// 2.使用全路径
SQL映射文件
SQL 映射文件结构: cache - 配置给定命名空间的缓存。
cache-ref – 从其他命名空间引用缓存配置。
resultMap – 最复杂,也是最有力量的元素,用来描述如何从 数据库结果集中来加载对象。
sql – 可以重用的
SQL 块,也可以被其他语句引用。
insert – 映射插入语句 update – 映射更新语句 delete – 映射删除语句 select – 映射查询语句
SQL映射文件 Select select from Blog where id id 使用完全限定名调用映射语句1.Blog blog Blog session.selectOneorg.mybatis.example.BlogMapper.selectBlog 101String blogNameblog.getBlogNameSQL映射文件 Select delete from Author where id id