MyBatis是啥子东西?是一个DAO层的框架

文章目录

一、MyBatis 介绍

MyBatis 是一个优秀的基于 Java 的持久层框架(是一个DAO层的框架),它内部封装了 JDBC,使开发者只需要关注 sql 语句本身,而不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。

MyBatis 通过 xml 或注解的方式将要执行的各种 statement 配置起来,并通过 Java 对象和 statement 中 sql 的动态参数进行映射生成最终执行的 sql 语句。最后 MyBatis 框架执行 sql 并将结果映射为 Java 对象并返回。

MyBatis 的过去: MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code ,并且改名为MyBatis。2013年11月迁移到Github

名字由来:iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。

当前,最新版本是MyBatis 3.5.9,其发布时间是2021年12月26日。

优点: 采用 ORM 思想解决了实体和数据库映射的问题,对 JDBC 进行了封装,屏蔽了 JDBC API 底层访问细节,使我们不用与 JDBC API 打交道,就可以完成对数据库的持久化操作。

二、入门 MyBatis

前面的介绍我们提到了DAO层、JDBC、sql语句本身、映射等。下面来简单说说使用 MyBatis 的六大步骤:

① 添加 MyBatis 的坐标

② 创建 user 数据表

③ 编写 User 实体类

④ 编写映射文件 UserMapper.xml

⑤ 编写核心配置文件 SqlMapConfig.xml

⑥ 编写 DAO 层,使用动态代理实现

第①步中的“坐标”就相当于是在引入jar包,假设我们是用 Maven 进行的开发,那么可以在 pox.xml 文件中写你需要的 MyBatis 依赖,示例如下:

<dependencies>
    ……
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.4.6</version>
    </dependency>
    ……
</dependencies>

第②、③步创建数据表和实体类不用多说。

第④步提到了映射文件:UserMapper.xml,该文件的名字一般由实体类+Mapper组成,文件里面是sql语句,相当于 DAO 层接口的实现类。但这个文件的存放位置有点讲究,它在resource目录下的某个包里,这个包名必须跟实体类的包名同步,举例说明,实体类 User.java 放在 com.***.domain 下,那么映射文件 UserMapper.xml 的包名得是 com.***.mapper 。映射文件中的sql语句的参数不再用?做占位符了,写法变为 #{实体类属性名}

第⑤步是编写核心配置文件:SqlMapConfig.xml,里面是数据库连接的四要素、事务管理器等。它直接放在resource目录下即可。

第⑥步编写DAO层接口,并使用动态代理的方式编写测试类,有四个点需要注意:1、映射文件中的namespace与接口类的全限定

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值