【Mybatis】——初识架构
来源:互联网 发布:java开发实战经典光盘 编辑:程序博客网 时间:2024/06/06 05:58
前言
看了springMVC视频觉得自己对Mybatis的理解不深,所以回来再看了一遍视频。
概述
Mybatis是一个持久层的框架,是apache下的顶级项目。它的前身是iBatis,2010年这个项目由apache software foundation迁移到Google code,并且改名为Mybatis,实质上也Mybatis对ibatis进行一些改进。2013年11月迁移到Github。
Mybatis是一个优秀的持久层框架,它对JDBC的操作数据库的过程进行了封装,使开发者只需要关注SQL本身,而不需要花费精力去处理如:注册驱动、创建connection、创建satement、手动设置参数、结果集检索等JDBC繁杂的过程代码。
Mybatis通过XML或注解的方式将要执行的各种statement(statement、preparedStatemnt、CallableStatement)配置起来,并通过Java对象和statement中的SQL进行映射生成最终执行的SQL语句,最后由Mybatis框架执行SQL并将结果映射成Java对象返回。
Mybatis框架
SqlMapConfig.xml是Mybatis的全局配置文件,名称可以是不固定的。在这个文件中配置了数据源、事务等Mybatis运行环境配置映射文件。
SqlSessionFactory是会话工厂,它根据配置文件创建工厂,作用是创建sqlSession.
SqlSession是一个会话接口,它是面向用户的接口。作用是操作数据库,发出sql增删改查。
Executor是执行器,也是一个接口,可以是基本执行器和缓存执行器。作用是SqlSession内部通过执行器操作数据库。
mapped statement是底层封装的对象。作用是对操作数据库存储封装,包括sql语句,输入参数和输入结果类型。
Mybatis和hibernate的对比
Mybatis和hibernate不同,它不完全是一个ORM框架,因为MyBatis需要程序员自己编写Sql语句,不过mybatis可以通过XML或注解方式灵活配置要运行的sql语句,并将java对象和sql语句映射生成最终执行的sql,最后将sql执行的结果再映射生成java对象。
Hibernate对象/关系映射能力强,数据库无关性好,对于关系模型要求高的软件(例如需求固定的定制化软件)如果用hibernate开发可以节省很多代码,提高效率。但是Hibernate的学习门槛高,要精通门槛更高,而且怎么设计O/R映射,在性能和对象模型之间如何权衡,以及怎样用好Hibernate需要具有很强的经验和能力才行。
- 【Mybatis】——初识架构
- Mybatis——初识
- 学习笔记——初识mybatis
- 【三层架构】——COM/DCOM初识
- 初识软件架构——三层
- 【MyBatis框架点滴】——初识+环境搭建
- 初识mybatis
- 初识Mybatis
- 初识MyBatis
- 初识MyBatis
- 初识Mybatis
- 初识mybatis
- Mybatis初识
- Mybatis初识
- 初识MyBatis
- 初识MyBatis
- 初识MyBatis
- 初识Mybatis
- Telephony之进程与实体
- Android极光推送集成和跳转
- Java 重要知识点
- 在真机上执行react-native run-android出现com.android.ddmlib.InstallException: Failed to finalize session错误
- Unity开发教程学习路线
- 【Mybatis】——初识架构
- 在Dubbox中开发REST风格的远程调用(RESTful Remoting)
- dtcms4.0网站除了首页 其它页面全部没有链接了 报错404
- Linux开机启动(bootstrap)
- 主键和唯一索引
- Hello World 新手必会!!
- Android中图形的绘制------AchartEngine框架
- 关于setInterval的一个例子
- SQL SERVER——TempDB问题查找定位与解决