mybatis

MyBatis简介

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

  1. MyBatis前身是iBatis,本是Apache的一个开源的项目

  2. 官方网站 mybatis

  3. mybaits是什么

    • ORM框架(O:对象,R:关系,M:映射) ,同类产品Hibernate

      • ORM框架建立java语言中O(对象)与数据库中的R(数据表)之间的M(对应的关系),可以编程方式去操作数据库

    • 实体类和SQL语句之间建立映射关系

  4. 特点

    • 基于SQL语法,简单易学

    • 能了解底层封装过程

    • SQL语句封装在配置文件中,便于统一管理与维护,降低程序的耦合度

    • 方便程序代码调试

MyBatis框架优缺点

  1. 优点

    • 与JDBC相比,减少了50%以上的代码量

    • 最简单的持久化框架,小巧并简单易学

    • SQL代码从程序代码中彻底分离,可重用

    • 提供XML标签,支持编写动态SQL

    • 提供映射标签,支持对象与数据库的ORM字段映射

  2. 缺点

    • SQL语句编写工作量大,对开发人员有一定要求

    • 数据库移植性差

MyBatis基本要素

MyBatis的核心对象

  • SqlSessionFactoryBuilder

  • SqlSessionFactory

  • SqlSession

核心配置文件

mybatis-config.xml,名称可以任意

映射文件

XXXMapper.xml

  1. SqlSessionFactoryBuilder----build()--->2.SqlSessionFactory---openSession()--->3.SqlSession

  2. SqlSessionFactoryBuilder

    • 用过即丢,其生命周期只存在于方法体内

    • 可重用其来创建多个 SqlSessionFactory 实例

    • 负责构建SqlSessionFactory,并提供多个build方法的重载

  3. SqlSessionFactory

    • SqlSessionFactory是每个MyBatis应用的核心。作用:创建SqlSession实例

    • 作用域:Application,生命周期与应用的生命周期相同

    • 单例:存在于整个应用运行时,并且同时只存在一个对象实例

  4. SqlSession

    • 包含了执行SQL所需的所有方法

    • 对应一次数据库会话,会话结束必须关闭

    • 线程级别,不能共享

  5. SqlSession的两种使用方式

    • 通过SqlSession实例直接运行映射的SQL语句

    • 基于Mapper接口方式操作数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值