MyBatis-plus快速上手

看了官方文档,用SpringBoot写个快速上手demo。

先来个官方链接,国人写的,语言清晰易懂。

https://mp.baomidou.com/guide/

首先,需要在创建一个SpringBoot工程,在pom里导入一下依赖

	    <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.0.5</version>
        </dependency>

        <!--mysql 5.x-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.21</version>
        </dependency>

        <!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

        <!--junit-->
        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-launcher</artifactId>
            <scope>test</scope>
        </dependency>

其中junit是为了方便测试。

再处理一下数据库。

创建一个名为mybatis_plus的数据库,创建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)
);

user表中插入数据:

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');

然后开始正式的代码编写

创建一个User实体类(注意要和数据库字段保持一致,不然后面插入会出错):

@NoArgsConstructor
@AllArgsConstructor
@Data
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

创建UserMapper:

@Repository
public interface UserMapper extends BaseMapper<User> {
}

UserMapper继承于BaseMapper,泛型参数为刚刚创建的User。到这里,强大的MyBatis-Plus已经帮助我们写完了所有的基本CRUD语句,也就是说,基本的CRUD无需再手动编写了。

不过还没结束,还需要在SpringBoot启动类上加入@MapperScan("**.mapper")去扫描mapper,因为是写上手demo **代替所有包了

@MapperScan("**.mapper")
@SpringBootApplication
public class MybatisPlusApplication {

    public static void main(String[] args) {
        SpringApplication.run(MybatisPlusApplication.class, args);
    }

}

然后再在application.proerties里加上数据库配置

spring.datasource.username=root
spring.datasource.password=root
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

最后在测试类里编写

@SpringBootTest
class MybatisPlusApplicationTests {
    @Autowired
    private UserMapper userMapper;

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

userMapper.selectList()方法需要传一个wrapper,但我们是直接查询,所以传个null就好,

运行结果:
在这里插入图片描述
再写个插入方法:

 	@Test
    void insertUser() {
        User user = new User();
        user.setName("NoNuanQi");
        user.setAge(10068);
        user.setEmail("789456123@csdn.com");
        userMapper.insert(user);
    }

mybatis-plus有自己的主键策略,可以不用设置id(某些需要手动设置id的情况除外),也可以不用在数据库建表是写上自增,采用相关的策略就能实现自增,这里采用默认的主键策略,也就是id会变成一串数字。

执行结果:

在这里插入图片描述
插入成功,至此,上手demo就写完

posted @ 2021-08-18 17:10  TellMeYourStory  阅读(112)  评论(0)    收藏  举报