• Mybatis 概述


    一、Mybatis 概述

    1.Mybatis是什么?

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录

    2.ORM是什么

    ORM 是 Object Relational Mapping 的缩写,译为“对象关系映射”,它解决了对象和关系型数据库之间的数据交互问题。

    使用面向对象编程时,数据很多时候都存储在对象里面,具体来说是存储在对象的各个属性(也称成员变量)中。例如有一个 User 类,它的 id、username、password、email 属性都可以用来记录用户信息。当我们需要把对象中的数据存储到数据库时,按照传统思路,就得手动编写 SQL 语句,将对象的属性值提取到 SQL 语句中,然后再调用相关方法执行 SQL 语句。

    而有了 ORM 技术以后,只要提前配置好对象和数据库之间的映射关系,ORM 就可以自动生成 SQL 语句,并将对象中的数据自动存储到数据库中,整个过程不需要人工干预。在 Java 中,ORM 一般使用 XML 或者注解来配置对象和数据库之间的映射关系。

    3.MyBatis框架的优缺点及其适用的场合

    优点

    1. 与JDBC相比,减少了50%以上的代码量。
    2. MyBatis是易学的持久层框架,小巧并且简单易学。
    3. MyBatis相当灵活,不会对应用程序或者数据库的现有设计强加任何影响,SQL写在XML文件里,从程序代码中彻底分离,降低耦合度,便于统一的管理和优化,并可重用。
    4. 提供XML标签,支持编写动态的SQL,满足不同的业务需求。
    5. 提供映射标签,支持对象与数据库的ORM字段关系映射。

    缺点

    1. SQL语句的编写工作量较大,对开发人员编写SQL的能力有一定的要求。
    2. SQL语句依赖于数据库,导致数据库不具有好的移植性,不可以随便更换数据库。

    适用场景

    MyBatis专注于SQL自身,是一个足够灵活的DAO层解决方案。对性能的要求很高,或者需求变化较多的项目,例如Web项目,那么MyBatis是不二的选择。

  • 相关阅读:
    Scala 05 —— 函数式编程底层逻辑
    Chip and Ribbon(Round 158)
    Spring事务管理和事务相关配置以及事务传播行为
    ES6模块导入与导出的方式
    读书笔记:《心流》
    request 请求类封装
    python爬虫(Selenium案列)第二十四
    Android开发笔记消息推送SDK
    论文解读(LightGCL)《LightGCL: Simple Yet Effective Graph Contrastive Learning for Recommendation》
    通用ORM的设计与实现
  • 原文地址:https://blog.csdn.net/Afu1021/article/details/134212092