MyBatis-Plus

什么是MybatisPlus

为简化而生!

快速入门

1.创建一个springboot项目,记得修改默认的maven配置

2.导入依赖

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
</dependency>

<!-- mybatis-plus依赖,使用了plus就尽量不要导入mybatis的依赖了,避免版本冲突-->
<dependency>
	<groupId>com.baomidou</groupId>
	<artifactId>mybatis-plus-boot-starter</artifactId>
	<version>3.4.3.4</version>
</dependency>

3.连接数据库以及编写数据库配置文件

spring.datasource.username=root
spring.datasource.password=Gyh!1027
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

4.编写pojo以及mapper

public class User {
    private int id;
    private String name;
    private int age;
    private String email;
}
// 在对应的Mapper上继承BaseMapper<T>,所有的CRUD就自动编写完成了
@Mapper
// 显示的指定要扫描的接口,否则会爆 could not autowired
@Component(value = "UserMapper")
public interface UserMapper extends BaseMapper<User> {

}

5.测试查询所有的用户及结果

    @Autowired
    private UserMapper userMapper;

    @Test
    void contextLoads() {
        List<User> userList = userMapper.selectList(null);
        for (User user : userList) {
            System.out.println(user);
        }
    }

MyBatis-Plus

配置日志

由于mybatis-plus所有的sql不可见,需要配置才能看见,方便调试

# 配置日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

主键生成策略

在测试插入方法时,出现了这种情况
User{id=1450026548601081857, name='yuu', age=18, email='3562090042@qq.com'}
这里的id生成使用的是twitter的雪花算法,是一个Long类型的ID

上一篇:使用ShardingSphere-JDBC完成Mysql的分库分表和读写分离


下一篇:SpringBoot 配置多数据源并动态切换