MyBatis 基础搭建及架构概述

目录

    • MyBatis 是什么?
    • MyBatis 项目构建
    • MyBatis 整体架构
      • 接口层
      • 数据处理层
      • 基础支持层

MyBatis 是什么?

MyBatis是第一个支持自定义SQL、存储过程和高级映射的类持久框架。MyBatis消除了大部分JDBC的样板代码、手动设置参数以及检索结果。MyBatis能够支持简单的XML和注解配置规则。使Map接口和POJO类映射到数据库字段和记录。

下面我们通过一个简单的项目搭建来带你认识一下MyBatis的使用和一些核心组件的讲解。

MyBatis 项目构建

为了快速构建一个MyBatis项目,我们采用SpringBoot快速搭建的方式。搭建好后在对应的pom.xml下添加如下的maven依赖,主要作用在于引入mybatis一些jar包和类库

主要分为四个步骤:

  1. 快速构建项目,引入核心maven dependency依赖
  2. 构建POJO类和接口式编程的 Mapper类,编写SQL语句
  3. 编写config.properties数据库驱动等配置
  4. 构建Mybatis核心配置文件即mybatis-config.xml,引入数据库驱动,映射Mapper类
  5. 编写Junit单元测试类


  org.mybatis
  mybatis
  3.4.6



  mysql
  mysql-connector-java
  5.1.25



  junit
  junit
  4.12
  test

为了便于更好的说明文章的主旨,这里就不贴出全部代码了,会贴出核心代码部分

编写对应的POJO类和接口式编程Mapper类,这里我们以部门业务逻辑为例,构建一个部门类,有三个属性即部门编号、部门名称、位置,下面是部分代码:

Dept.java

package com.mybatis.beans;
public class Dept {
  
    private Integer deptNo;
    private String  dname;
    private String  loc;
  
    public Dept() {}
    public Dept(Integer deptNo, String dname, String loc) {
        this.deptNo = deptNo;
        this.dname = dname;
        this.loc = loc;
    }
        get and set...
}

MyBatis最核心的功能之一就是接口式编程,它可以让我们编写Mapper接口和XML文件,从而把参数和返回结果映射到对应的字段中。

DeptDao.java

package com.mybatis.dao;
public interface DeptDao {

    // 通过部门名称查询
    public Dept findByDname(String Dname);
    // 通过部门编号查询
    public Dept findByDeptNo(Integer deptno);
}

在/resources 下新建com.mybatis.dao 包,在其内编写对应的XML配置文件,此XML配置文件和Mapper互为映射关系。



    
     select * from dept
    
  
    

    

上述的 就是映射到Mapper接口类的命名空间