MybatisPlus快速开始

本文在mybatisplus官方快速开始示例基础上,稍作调整,实现基于springboot工程的mybatis增删改查。

依赖引入

首先,如果是基于springboot工程,则直接引入starter依赖即可,同时因为此处是按h2内存数据库模式,因此h2依赖也一并引入:

<!--mybatis plus-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.3.2</version>
</dependency>
<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>

配置类编写

因为需要设定mapper扫描信息,增加配置类(此处官方案例是在application主类中增加,本案例与之有所不同)

@Configuration
@MapperScan("pers.techlmm.mbplus.mapper")
public class MBPlusConfig {

}

数据结构初始化

以下是建立数据库表,并插入初始数据:

drop table if exists t_user;

create table t_user
(
    uid      bigint(20) not null comment '用户ID',
    name     varchar(64) default null comment '用户名称',
    birthday date        default null comment '生日',
    primary key (uid)
);

数据初始化脚本如下:

delete
from t_user;

insert into t_user(uid, name, birthday)
values (1, '张三', '1986-03-03'),
       (2, '李四', '1988-04-04'),
       (3, '王五', '1989-05-12');

实体及mapper类编写

基于数据库结构,编写USER实体类如下:

@TableName("T_USER")
@Data
@Builder
public class User {

    @TableId
    private Long uid;

    private String name;

    private LocalDate birthday;
}

补充说明:因为实际数据库有T_前缀,因此要通过@TableName注解来指定表名,同时,因为主键字段是uid,并非id,因为需通过@TableId来指定id字段,以便selectById进行识别和转换。

mapper类如下(暂无自定义方法):

public interface UserMapper extends BaseMapper<User> {

}

application.yml配置

具体样例配置如下:

spring:
  datasource:
    schema: classpath:db/scheme-h2.sql
    data: classpath:db/data-h2.sql
    url: jdbc:h2:mem:test
    username: root
    password: test

样例测试

编写测试用例如下:

@SpringBootTest
@Slf4j
public class UserTest {

    @Autowired
    UserMapper userMapper;

    @Test
    void crudTest() {
        User user = User.builder().uid(4L).name("马六").birthday(LocalDate.now()).build();
        log.info("create:{},user:{}", userMapper.insert(user), userMapper.selectById(4L));

        user.setName("马六六");
        log.info("update:{},user:{}", userMapper.updateById(user), userMapper.selectById(4L));

        log.info("delete:{}", userMapper.deleteById(4L));

        List<User> users = userMapper.selectList(null);
        Assertions.assertEquals(3, users.size());
        log.info("users:{}", users);
    }
}

运行后输入如下信息:

create:1,user:User(uid=4, name=马六, birthday=2020-06-29)
update:1,user:User(uid=4, name=马六六, birthday=2020-06-29)
delete:1
[User(uid=1, name=张三, birthday=1986-03-03), User(uid=2, name=李四, birthday=1988-04-04), User(uid=3, name=王五, birthday=1989-05-12)]

到此,mybatis-plus快速使用就验证完成。

参考资料

  • https://mp.baomidou.com/guide/quick-start.html
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值