创建数据库

手动创建 mybatis_plus 数据库即可。

创建user表

DROP TABLE IF EXISTS user;

CREATE TABLE user
(
    id BIGINT(20) NOT NULL COMMENT '主键ID',
    name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
    age INT(11) NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);
真实开发中,还有version(乐观锁),deleted(逻辑删除),gmt_create,gmt_modified

插入数据

INSERT INTO user VALUES
(1,'lxh1',18,'158111@qq.com'),
(2,'lxh2',19,'158222@qq.com'),
(3,'lxh3',20,'158333@qq.com'),
(4,'lxh4',21,'158444@qq.com'),
(5,'lxh5',22,'158555@qq.com');

创建SpringBoot项目

不需要勾选依赖,我们自己在pom.xml加入就可以了,我这里习惯性勾上了。尽量不要同时引入mybatis和mybatis-plus

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.0.5</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </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>
    </dependencies>

配置数据库连接

在application.properties中配置数据库信息

我使用的是mysql8.0,理论上这个配置在任何版本都能用。

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8

测试数据库连接

在测试类中添加以下测试,运行这个方法,不报错则证明连接成功。

    @Autowired
    DataSource dataSource;
    @Test
    void contextLoads() {
        System.out.println(dataSource);
    }

对比

传统的mybatis,pojo-dao(连接mysql,配置mapper.xml文件)-service-controller

使用mybatis-plus,pojo-mapper接口-使用

快速使用

新建pojo.User,即在pojo层中新建一个User类

新建mapper.UserMapper,继承BaseMapper。

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}
@Mapper
public interface UserMapper extends BaseMapper {
}

测试使用

在测试类中注入userMapper,试着获取该表全部数据,这里的打印为函数式编程,无需过多理会也行。

    @Autowired
    private UserMapper userMapper;

    @Test
    public void test(){
        List<User> users = userMapper.selectList(null);
        users.forEach(System.out::println);
    }

sql谁帮我们写的? mybatis-plus

方法哪里来的? mybatis-plus,我们只需要继承即可。


Last modification:June 5, 2020
如果觉得我的文章对你有用,请随意赞赏