springboot整合Mybatis

1、创建springboot项目,勾选Spring web、MyBatis Framework、MySQL Driver

  1. 当前springboot选择的是2.6.13版本,jdk1.8
  2. 尽量选2.几的springboot
  3. mybatis-spring-boot-starter对应版本应该降低到2.2.2

2、在pom.xml中导入的相应坐标

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>

        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter-test</artifactId>
            <version>3.0.3</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>

3、配置application.properties

spring.application.name=demo
spring.datasource.url=jdbc:mysql://192.168.29.71:3306/uacs?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC  
spring.datasource.username=root
spring.datasource.password=uacsapp
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
mybatis.mapper-locations=classpath*:/mappers/*Mapper.xml

4、创建实体类Book

新建entity包,再新建Book实体类

package com.example.entity;

import lombok.Data;
import java.util.Date;
@Data
public class Book  {

    private Integer id;
    private String picture;
    private String name;
    private String introduce;
    private String publish;
    private String auth;
    private Double price;
    private Integer isDeleted;
    private Date gmtCreate;
    private Date gmtModified;
}

5、新建接口BookMapper

新建mappers包,再新建BookMapper接口

package com.example.mappers;

import com.example.entity.Book;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface BookMapper {
    Book getBookById(Integer id);
}


6、对应建表sql

CREATE TABLE `book` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '序号',
  `picture` varchar(2000) DEFAULT NULL COMMENT '图片',
  `name` varchar(200)  DEFAULT NULL COMMENT '书本名称',
  `introduce` varchar(200)  DEFAULT NULL COMMENT '介绍',
  `publish` varchar(200)  DEFAULT NULL COMMENT '出版社',
  `auth` varchar(200)  DEFAULT NULL COMMENT '作者',
  `price` double DEFAULT NULL COMMENT '价格',
  `is_deleted` tinyint unsigned DEFAULT '0' COMMENT '逻辑删除 1true)已删除, 0false)未删除',
  `gmt_create` datetime DEFAULT NULL COMMENT '创建时间',
  `gmt_modified` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=8 COMMENT='书本信息表';

7、在resources创建新建BookMapper.xml文件

在resources下新建mappers包,再新建BookMapper.xml,xml文件最前面不能留有空行、空格

<?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.example.mappers.BookMapper">


    <select id="getBookById" resultType="com.example.entity.Book">
        SELECT id, name, auth
        FROM book
        where id = #{id}
    </select>
</mapper>

8、SpringBootTest测试类中进行测试

package com.example;

import com.example.mappers.BookMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class DemoApplicationTests {

    @Autowired
    private BookMapper bookMapper;
    @Test
    void MyTest1() {
        System.out.println(bookMapper.getBookById(8).toString());
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值