首页 > 其他分享 >Mybatis(一)

Mybatis(一)

时间:2022-09-07 09:47:59浏览次数:76  
标签:持久 MyBatis 映射 mybatis sql Mybatis

学习一个新的内容,我认为还是需要从是什么、为什么、怎么做(怎么用)三个点进行切入,下面我就以此三点对Mybatis进行学习。

一、Mybatis是什么

 

1.Mybatis简介

MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。(摘自百度百科)

这里直接引用官网的文档:

中文文档网址:https://mybatis.net.cn/index.html

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

 2.什么是持久层

在了解什么是持久层之前我们需要先明白什么是持久化。

持久化,举个现实中的例子,食物放到冰箱里是为了让其长期的保鲜。同样,持久化也是为了让数据能够长期的保存起来,数据在内存中断电即失,于是我们就将其从内存保存到了数据库之中,这就是持久化的过程。

而持久层就是具体实现持久化操作的代码块,能够让数据在持久化状态和瞬时化状态进行转换。

3.如何获得Mybatis:

(1)Github获取:mybatis/mybatis-3: MyBatis SQL mapper framework for Java (github.com)

(2)Maven获取:

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.10</version>
</dependency>

二、为什么要学习(使用)Mybatis

 首先我们应该明白Mybatis只是一个框架,并不是必要的,但是它能够使我们在编程的过程中更加的方便和条理清晰。

我们应该要明白学习的目的是业务的需求,即有目的性地去学习,因为它有用我们去学习,如果没有用的话是不用学的。

传统的JDBC太过复杂,Mybatis框架就是为了实现对其的简化和自动化。

下面是一些Mybatis的优点(特性):(摘自百度百科)

(1)简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件。易于学习,易于使用。通过文档和源代码,可以比较完全的掌握它的设计思路和实现。

(2)灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。

(3)解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。

(4)提供映射标签,支持对象与数据库的ORM字段关系映射。

(5)提供对象关系映射标签,支持对象关系组建维护。

(6)提供xml标签,支持编写动态sql。

三、Mybatis怎么用

后续我们将在具体的实例中进行展示。

 

(本文仅作个人学习记录用,如有纰漏敬请指正)

 

标签:持久,MyBatis,映射,mybatis,sql,Mybatis
From: https://www.cnblogs.com/jmsstudy/p/16663996.html

相关文章

  • mybatisplus SQL一对多
    https://blog.csdn.net/Isyoubao/article/details/122212113 重点:<collectionproperty=“nspSchedulings”…/>property=“value”:对应list集合字段,当前为医生排班......
  • MyBatis框架
    MyBatis简介MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis......
  • mybatis-plus-generator代码生成器(新)
    代码生成器所需要的依赖<!--代码生成器--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</ar......
  • MyBatis的一级缓存
    在MyBatis中,一级缓存是默认开启的。1、在一个SqlSession中,对User表进行两次根据ID的查询,查看发出sql语句的情况。/***根据ID查询用户**@paramid*@return*/......
  • Spring_Boot + Mybatis_Plus初始化
    创建SpringBoot项目基础创建及基本配置:https://www.cnblogs.com/Stars0121/p/16601285.html安装依赖项目所需依赖<dependencies><dependency>......
  • mybatis注入的快捷方法忍者鸟(mybatisx)和小辣椒(lombok)
    忍者鸟(mybatisx)和小辣椒(lombok)1.忍者鸟(mybatisx)作用:在mybatis注入时可以快速找到对应的方法图解:点击mapper接口中的方法左侧小红鸟后,即可跳转到对应的xml注解文件中的......
  • Mybatis学习笔记(七)——Mybatis关联查询
    级联关系是一个数据库实体的概念,有3种级联关系,分别是一对一级联、一对多级联以及多对多级联。例如,一个角色可以分配给多个用户,也可以只分配给一个用户。大部分场景下,我们......
  • Mybatis学习笔记(六)——Mybatis注解
    注解主要分为三大类,即SQL语句映射、结果集映射和关系映射。下面分别进行讲解。不过一般注解用的比较少。1.SQL语句映射1)@Insert:实现新增功能 这个方法是在mapper接口......
  • mybatis 动态排序
    publicclassPagination{//当前页privateIntegerpage=1;//一页显示条数privateIntegerlimit=10;//排序字段privat......
  • mybatis资源扫描 插件
    <!--在build中配置resources,来防止我们资源导出失败的问题--><build><resources><resource><directory>src/main/resources</directory>......