MyBatis介绍、使用

MyBatis

主流的 ORM 框架,之前叫做 iBatis,后来更名为 MyBatis,实现数据持久化的框架。同时 Java,.NET,Ruby 三种语言,MyBatis 是⼀个对 JDBC 进行封装的框架。

ORM 框架 Hibernate,MyBatis 和 Hibernate 的区别?
Hibernate 是⼀个“全自动化” ORM 框架,MyBatis 是⼀个“半自动化的”ORM框架。
全自动化:开发者只需要调用相关接口就可以完成操作,整个流程框架都已经进行了封装。Hibernate 实现了 POJO 和数据库表之间的映射,同时可以自动生成 SQL 语句并完成执行。

半自动化:框架只提供⼀部分功能,剩下的工作仍需要开发者手动完成,MyBatis 没有提供 POJO 与数据库表的映射,只实现了 POJO 与 SQL 之间的映射关系,需要开发者自定义 SQL 语句,以及数据与POJO 之间的装配关系。

虽然功能没有 Hinbernate 更加方便,但是这种“半自动化”的方式提高了框架的灵活性,开发者可以根据具体的业务需求,完成定制化的持久层解决方案。
MyBatis 对所有的 JDBC 进行了封装,包括参数设置、SQL 执行、结果集解析等,通过 XML 配置/注解的⽅式完成 POJO 与数据的映射。简单讲,使⽤ MyBatis 进⾏开发,主要完成两步操作:
1、自己编写 SQL
2、自己完成数据库数据与 POJO 的映射

优点:
1、极⼤简化了 JDBC 代码的开发
2、简单好用、容易上手、具有更好的灵活性
3、通过将 SQL 定义在 XML 中的方式降低程序的耦合性
4、支持动态 SQL,可以根据具体业务需求灵活实现功能

缺点:
1、相比于 Hibernate,开发者需要完成更多工作,比如定义 SQL、设置 POJO 与数据的映射关系等。
2、要求开发⼈员具备⼀定的 SQL 编写能力,在⼀些特定场景下工作量比较⼤。
3、数据库移植性差,以为 SQL 依赖于底层数据库,如果要进行数据库迁移,部分 SQL 需要重写编写。

MyBatis 使用

1、创建 Maven 工程,pom.xml 引入相关依赖。

<dependencies>
 <!-- MyBatis -->
 <dependency>
 <groupId>org.mybatis</groupId>
 <artifactId>mybatis</artifactId>
 <version>3.4.5</version>
 </dependency>
 <!-- MySQL驱动 -->
 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>8.0.19</version>
 </dependency>
</dependencies>

2、创建实体类

package com.southwind.entity;
import lombok.Data;
@Data
public class People {
   
 private Integer id;
 private String name;
 private Double money; }

3、配置 MyBatis 环境,在 resources 路径下创建 config.xml(文件名可以自定义),配置数据源信息。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
 <!-- 配置 MyBatis 运⾏环境 -->
 <environments default="development">
 <environment id="development">
 <transactionManager type="JDBC"></transactionManager>
 <!-- 数据源 -->
 <
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

走不尽的心路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值