SpringBoot学习笔记:整合mybatis

Posted 听风者-better

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot学习笔记:整合mybatis相关的知识,希望对你有一定的参考价值。

本文介绍SpringBoot整合mybatis

一.创建一个SpringBoot项目

  1. 引入相应的依赖

    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.1.2</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    
  2. 创建测试表

    CREATE TABLE `user`  (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
      `age` int(11) NULL DEFAULT NULL,
      PRIMARY KEY (`id`) USING BTREE
    ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
    
    SET FOREIGN_KEY_CHECKS = 1;   
    
  3. 配置jdbc配置

    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
    spring.datasource.username=root
    spring.datasource.password=root
    

二.编写具体实现接口

  1. 创建实体类

    public class User 
        private int id;
        private String name;
        private int age;
        //setter/getter省略
    
  2. 创建接口

    @Mapper
    public interface UserMapper 
    
        public List<User> getAllUser();
    
        public int addUser(User user);
    
    

    @Mapper注解标记这个接口作为一个映射接口 也可以在启动类里添加@MapperScan(“对应mapper包名”)

    这样就可以不用每个接口都添加@Mapper注释了

  3. 创建mapper文件

    在resources目录下添加mapper文件夹用于存放mapper文件

    application.properties里声明mapper文件存放的位置即可

    mybatis.mapper-locations=classpath:/mapper/*.xml
    

    mapper文件:

    <?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.twy.mybatisdemo.mapper.UserMapper">
        <select id="getAllUser" resultType="com.twy.mybatisdemo.entity.User">
            select * from user
        </select>
    
        <insert id="addUser">
            insert into user (id,name,age) values (#id,#name,#age)
        </insert>
    </mapper>
    

三.编写测试类

@SpringBootTest
class MybatisApplicationTests 

    @Autowired
    private UserMapper userMapper;

    @Test
    public void test() 
        User user = new User();
        user.setName("唐万言");
        user.setAge(20);
        userMapper.addUser(user);
        List<User> list = userMapper.getAllUser();
        for (User u : list) 
            System.out.println(u);
        
    


输出结果:

以上是关于SpringBoot学习笔记:整合mybatis的主要内容,如果未能解决你的问题,请参考以下文章

Springboot学习笔记7:整合Mybatis

SpringBoot学习笔记整合Mybatis

springboot学习笔记-2 一些常用的配置以及整合mybatis

SpringBoot 学习笔记 -- [spring Boot集成阿里Druid数据源,整合Mybatis搭建一个案例试试]

springboot学习笔记-5 springboot整合shiro

springboot学习笔记-5 springboot整合shiro