zoukankan      html  css  js  c++  java
  • Mybatis-Plus01 快速开始

    Mybatis-Plus虽然官网上有一个快速开始,但是实际操作有点问题,所以,自己写了一个。

    版本说明

    如果用其他软件版本可能会有部分差异

    mybatis-plus:3.4.0
    之前我是使用的是3.0.5,但是看官网文档已经更新到这个版本了,而且官方文档基本是基于3.3.0以上

    springboot:2.3.4

    mysql:5.1.47

    新建数据库和表

    1. 新建一个数据库mybatis_plus
    2. 新建一个表和添加数据
    create table user(
    	id BIGINT(20) not null COMMENT "主键ID"
    	,name VARCHAR(30) COMMENT "姓名"
    	,age INT(11) COMMENT "年龄"
    	,email VARCHAR(50) COMMENT "邮箱"
    	,PRIMARY KEY(id)
    );
    INSERT INTO `mybatis_plus`.`user` (`id`, `name`, `age`, `email`) VALUES ('1', 'Jane', '10', 'test1@qq.com');
    INSERT INTO `mybatis_plus`.`user` (`id`, `name`, `age`, `email`) VALUES ('2', 'Jack', '18', 'test2@qq.com');
    INSERT INTO `mybatis_plus`.`user` (`id`, `name`, `age`, `email`) VALUES ('3', 'Tom', '20', 'test3@qq.com');
    INSERT INTO `mybatis_plus`.`user` (`id`, `name`, `age`, `email`) VALUES ('4', 'Samdy', '15', 'test4@qq.com');
    INSERT INTO `mybatis_plus`.`user` (`id`, `name`, `age`, `email`) VALUES ('5', 'kangkanhg', '16', 'test5@qq.com');
    

    初始化项目

    IDEA使用Spring Initializr新建一个springboot项目,使用版本2.3.4.RELEASE

    添加依赖

    注意:需要添加lombok插件

    <dependencies>
          <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <!--mysql 可以确定mysql的版本5还是8-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
    
        <!--lombok用来简化实体类-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
    </dependencies>
    

    配置

    在 application.properties 配置文件中添加 mysql 数据库的相关配置:
    注意如果mysql是8版本就要加一个时区?serverTimezone=GMT%2B8

    #mysql数据库连接
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus
    spring.datasource.username=root
    spring.datasource.password=123456
    

    编码

    实体类

    package com.jmu.pojo;
    
    import lombok.Data;
    
    @Data
    public class User {
        private Long id;
        private String name;
        private Integer age;
        private String email;
    }
    

    Mapper类

    package com.jmu.mapper;
    
    import com.baomidou.mybatisplus.core.mapper.BaseMapper;
    import com.jmu.pojo.User;
    import org.springframework.stereotype.Repository;
    
    @Repository
    public interface UserMapper extends BaseMapper<User> {
    
    }
    

    扫描mapper

    在mapper的启动类中添加

    package com.jmu;
    
    import org.mybatis.spring.annotation.MapperScan;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    @MapperScan("com.jmu.mapper")
    @SpringBootApplication
    public class MpApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(MpApplication.class, args);
        }
    
    }
    

    测试

    package com.jmu;
    
    import com.jmu.mapper.UserMapper;
    import com.jmu.pojo.User;
    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 MpApplicationTests {
    
        @Autowired
        private UserMapper userMapper;
        @Test
        void contextLoads() {
            List<User> all= userMapper.selectList(null);
            for (User user : all) {
                System.out.println(user);
            }
        }
    
    }
    

    测试结果

  • 相关阅读:
    linux下编译sphinx拓展
    Java为什么使用连接池
    内部类之.this&&.new
    何为代理
    Qt install Phonon
    Gcc简介与常用命令
    Vim的设置和使用——编程者
    QT程序启动界面的使用
    slide from one widget to another
    Hide the common top menu in Ubuntu 12.04
  • 原文地址:https://www.cnblogs.com/10134dz/p/13769915.html
Copyright © 2011-2022 走看看