mybatis
mybatis学习
-
环境
- JDK1.8
- Mysql5.7
- maven 3.6.1
- IDEA
-
回顾:
- JDBC
- Mysql
- Java基础
- Maven
- Junit
-
SSM框架:配置文件的。最好的方式:看文档官网;
1.简介
1.1 什么是mybatis
-
MyBatis 是一款优秀的持久层框架
-
什么叫持久层框架
- 什么是持久层?
- 持久是相对于瞬时来说的,*** 持久层,可以理解成数据 保存在 数据库或者 硬盘一类可以保存很长时间的设备里面,不像放在内存中那样断电就消失了,也就是把数据存在持久化设备上*** ,你想一下 内存中的数据 断电就没有了,硬盘的数据 是否会像内存中的数据一样断电消失么?
- 什么是持久层?
-
为什么要使用持久化框架?
- 企业应用中*** 数据很重要(各种订单数据、客户数据、库存数据之类的),比应用程序本身更重要,** 所以需要把数据持久化。持久化可以通过很多方式,写文件和数据库都可以。只是现在企业一般都会选择把数据持久化到数据库中,因为可以很方便的查询统计分析,但数据库的数据最终还是会写到磁盘上的。Java 程序员为了操作数据库, 最开始是使用JDBC* 来进行的,但是这种方式*** 开发效率低** ,要写一堆重复代码,加上关系数据库和对象本身存在所谓的阻抗不匹配情况,所以 为了提高开发效率,有人发明了 ORM 即 对象关系映射框架* (Hibernate是其中的佼佼者),对于 Java 程序员来说,就可以通过操纵对象来操纵数据库了
-
-
它支持自定义 SQL、存储过程以及高级映射。
-
MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
-
MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
-
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了[google code](https://baike.baidu.com/item/google code/2346604),并且改名为MyBatis 。
-
2013年11月迁移到Github。
-
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)
-
如何获得Mybatis?
-
maven仓库:Maven Repository: org.mybatis » mybatis » 3.5.2 (mvnrepository.com)
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.2</version> </dependency>
-
1.2、持久层
数据持久化
- 持久化就是将程序的数据再持久状态和瞬时状态转化的过程
- 内存:断电即失
- 数据库(jdbc),io文件持久化。
- 生活:冷藏,罐头
为什么需要持久化
- 有一些对象,不能让他丢掉
- 内存太贵了
1.3、持久层
Dao层,Service层,Controller层...
- 完成持久化工作的代码块
- 层界限十分明显。
https://www.bilibili.com/video/BV1NE411Q7Nx
1.4为什么需要Mybatis?
- 帮助程序员将数据存入到数据库中。
- 方便
- 传统的JDBC代码太复杂了。简化。框架。自动化。
- 不用Mybatis也可以。更容易上手。技术没有高低之分
- 优点:
- 简单易学
- 灵活
- sql和代码的分离,提高了可维护性
- 提供隐射标签,支持对象关系组建和维护
- 提供xml标签,支持编写动态sql
最重要的一点:使用的人多!
Spring SpringMVC SpringBoot