IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 6、SpringBoot整合Mybatis -> 正文阅读

[Java知识库]6、SpringBoot整合Mybatis

作者:%C2%A02.Mapper%E6%8E%A5%E5%8F%A3

目录

1、起步依赖

2、数据库表脚本

3、配置数据源

4、代码测试

1、注解开发方式

1.实体类

?2.Mapper接口

3.测试类

2、XML开发方式

1.Mapper接口类

2.XML配置

3.添加Mybatis配置

4.测试类


1、起步依赖

文档SpringBoot版本为2.5.4

<dependency>
     <groupId>org.mybatis.spring.boot</groupId>
     <artifactId>mybatis-spring-boot-starter</artifactId>
     <version>2.2.0</version>
</dependency>

2、数据库表脚本

CREATE TABLE `user`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;
INSERT INTO `user` VALUES (1, '百里慕溪', 20);
SET FOREIGN_KEY_CHECKS = 1;

3、配置数据源

spring:
  datasource:
    url: jdbc:mysql:///mylean  #jdbc:mysql:/// == jdbc:mysql://localhost:3306
    username: dbuser
    password: root
    driver-class-name: com.mysql.jdbc.Driver

4、代码测试

1、注解开发方式

1.实体类

package com.itlean.domain;

/**
 * @describe:
 * @author: weny.yang
 * @date: 2021-09-06 19:38
 */
public class User {

    private int id;
    private String name;
    private int age;

    get/set...

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

?2.Mapper接口

package com.itlean.mapper;

import com.itlean.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface UserMapper {

    @Select("select * from user")
    public List<User> findAll();

}

3.测试类

package com.itlean;

import com.itlean.domain.User;
import com.itlean.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;

@SpringBootTest
class ApplicationTests {

    @Autowired
    private UserMapper userMapper;
    
    @Test
    void findAll() {
        List<User> userList = userMapper.findAll();
        System.out.println(userList);
    }

}

输出:

?????????说明整合ok,但是控制台提醒`com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.意思说我们使用的mysql驱动太老本淘汰了,建议我们使用最新的,于是乎我们换上最新的,则不再报提醒:

spring:
  datasource:
    url: jdbc:mysql:///mylean  #jdbc:mysql:/// == jdbc:mysql://localhost:3306
    username: dbuser
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver #com.mysql.jdbc.Driver版本老旧,淘汰

?如果报如下错误,说明是时区问题,并且控制台也有对应的提示,图片太大,分开截图如下:

?使用提示内给出的字段名,为mysql数据源进行配置如下即可:

spring:
  datasource:
    url: jdbc:mysql:///mylean?serverTimezone=UTC  #jdbc:mysql:/// == jdbc:mysql://localhost:3306   UTC:标准时区
    username: dbuser
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver #com.mysql.jdbc.Driver版本老旧,淘汰

2、XML开发方式

1.Mapper接口类

package com.itlean.mapper;

import com.itlean.domain.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface UserXmlMapper { //名字随意取的,为了和上文注解开发区分开
    public List<User> findAll();
}

2.XML配置

在resources目录下新建文件夹,命名mapper,在mapper下面新建UserMapper.xml,mybatis的基本配置语法和规范本文不再赘述,如有欠缺请自行补课:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.itlean.mapper.UserXmlMapper">
    <select id="findAll" resultType="user">
        select * from user
    </select>
</mapper>

3.添加Mybatis配置

mybatis:
  mapper-locations: classpath:mapper/*Mapper.xml    #mapper映射文件路径
  type-aliases-package: com.itlean.domain           #别名对应类所在包路径
  # config-location:    # 指定mybatis的核心配置文件,本次是简单演示,并没有配置

4.测试类

package com.itlean;

import com.itlean.domain.User;
import com.itlean.mapper.UserMapper;
import com.itlean.mapper.UserXmlMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;

@SpringBootTest
class ApplicationTests {

    @Autowired
    private UserXmlMapper userXMLMapper;
    
    @Test
    void findAll() {
        List<User> userList = userXMLMapper.findAll();
        System.out.println(userList);
    }

}

输出:

?到此,SpringBoot整合Mybatis进行注解开发、xml配置开发就全部介绍完了。

希望对对你有帮助,学到就点个赞吧!

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-09-08 10:32:21  更:2021-09-08 10:37:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/31 7:49:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码