IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Mybatis基础学习之初识Mybatis -> 正文阅读

[Java知识库]Mybatis基础学习之初识Mybatis

前言

小伙伴们,大家好,我是狂奔の蜗牛rz,当然你们可以叫我蜗牛君,我是一个学习Java半年多时间的小菜鸟,同时还有一个伟大的梦想,那就是有朝一日,成为一个优秀的Java架构师。
这个Mybatis基础学习系列是用来记录我学习Mybatis框架基础知识的全过程 (这个系列是参照B站狂神的Mybatis最新教程来写的,由于是之前整理的,但当时没有发布出来,所以有些地方可能有错误,希望大家能够及时指正!)
之后我将会以一天一更的速度更新这个系列,还没有学习Mybatis3框架的小伙伴可以参照我的博客学习一下;当然学习过的小伙伴,也可以顺便跟我一起复习一下基础。
最后,希望能够和大家一同进步吧!加油吧!少年们!
废话不多说,让我们开始今天的学习内容吧,今天我们来到了Mybatis基础学习的第一站:初识Mybatis

1.Mybatis回顾

1.1 学习环境

  • JDK1.8
  • MySQL 5.7
  • Maven 3.6.1
  • IDEA 2019.3/2020.3

1.2 知识回顾

  • JDBC
  • MySQL
  • Java基础
  • Maven
  • Junit

SSM框架:配置文件的

最好的方式:看官方文档

2.初识Mybatis

2.1 Mybatis简介

2.1 .1 什么是Mybatis

在这里插入图片描述

  • MyBatis 是一款优秀的持久层框架
  • 它支持自定义 SQL、存储过程以及高级映射
  • MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集
  • MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录
  • MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis
  • 2013年11月迁移到Github。

2.1.2 如何获取Mybatis

  • Maven仓库

    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.2</version>
    </dependency>
    
  • GitHub:https://github.com/tuguangquan/mybatis

  • 中文文档:https://mybatis.org/mybatis-3/zh/index.html

2.3 持久化

2.3.1 数据持久化

1. 什么是数据持久化

  • 持久化就是将程序的数据再持久状态和瞬时状态转化的过程

例如在生活中,我们会将罐头和鲜肉在冰箱中进行冷藏,方便使用的时候取出来

2.3.2 为什么需要持久化

  • 一方面因为内存中的数据存在断电即失的问题,而JDBC数据库持久层的作用就是为了使IO文件持久化
  • 另一方面内存的价格远贵与磁盘

2.4 持久层

例如在常见的MVC架构中,主要分为Dao层Service层Controller层等,这里的Dao层就是表示数据持久层

  • 持久层表示的就是要完成持久化工作的代码块
  • 另一方面保障分层的界限进行明显区分

2.4.1 为什么需要Mybatis

主要方便程序员将数据存入到数据库中。由于传统的JDBC代码太过复杂了,所以我们使用半自动化的Mybatis框架进行简化(当然不用Mybatis也可以,原生的JDBC其实会更容易上手,但是内容繁琐,重复代码太多)

2.4.2 Mybatis的优缺点

精简版

  • 基于SQL语句编译,相当灵活
  • SQL和代码的分离,提高了可维护性
  • 提供映射标签,支持对象与数据库的ORM(对象关系模型)字段关系映射
  • 提供对象关系映射标签,支持对象关系组建维护
  • 提供XML标签,支持编写动态SQL

详细版

优点

  • 基于SQL语句编译,相当灵活,不会对应用程序或者数据库的现有设计早成任何影响
  • SQL可以写在XML里,解除SQL与程序代码的耦合,便于统一管理
  • 提供XML标签,支持编写动态SQL语句,并可重用
  • 与JDBC相比,减少50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接
  • 很好的与各种数据库兼容 (因为Mybatis使用JDBC来连接数据库,所以只要JDBC的支持的数据库Mybatis都能支持)
  • 能够与Spring很好的集成
  • 提供映射标签,支持对象与数据库的ORM字段关系映射;提供对象关系映射标签,支持对象关系组件维护

缺点

  • SQL语句的编写工作量较大,尤其是字段多,关联多表时,对开发人员编写S QL语句的功底有一定要求
  • SQL语句依赖数据库,导致数据库移植性查,不能随意更换数据库

好了,今天的有关初识Mybatis的学习就到此结束啦,欢迎小伙伴们积极学习和讨论,喜欢的可以给蜗牛君点个关注,顺便来个一键三连,我们下期见,拜拜啦!


参考视频链接:https://www.bilibili.com/video/BV1WE411d7Dv(【狂神说Java】Spring5最新教程IDEA版通俗易懂)

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:30:54  更:2021-10-16 19:32:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:06:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码