mybatis-plus在实际开发中的应用

本文介绍了在项目开发中如何使用Mybatis-Plus来简化工作。通过继承BaseEntity减少代码冗余,利用BaseMapper进行CRUD操作,以及利用查询条件构造器进行高效查询、更新和删除操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们在项目中使用Mybatis-Plus,这是一个基于Mybatis的优秀ORM框架,它提供了许多方便的工具和封装,可以大量地减轻我们的开发负担。下面我会分享一些我的经验和教训,希望对您有所帮助。

首先,我创建了一个实体类User,并让其继承自BaseEntity,这是Mybatis-Plus提供的一个实体类基础类。BaseEntity中封装了一些公共属性,如id、createtime、updatetime等,它们是数据库表中通用的属性,这样定义的好处是我们不需要在每个实体类中再定义这些属性,减少了代码的冗余。

public class User extends BaseEntity{
    // 用户名
    private String username;
    // 密码
    private String password;
    // 年龄
    private Integer age;
    // 性别 1-男 2-女
    private Integer gender;
    // 状态 1-启用 2-禁用
    private Integer status;
    // 邮箱
    private String email;
    // 手机号
    private String mobile;
    // 备注
    private String remark;
    // 生日
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;
  }

其次,我们需要创建一个Mapper接口,并让它继承自MybatisPlus的BaseMapper接口。BaseMapper中封装了许多常用的CRUD操作,如insert、update、delete、select等,我们可以直接调用这些方法,避免了手写SQL语句的麻烦。

public interface UserMapper extends BaseMapper<User> {

}

接下来,我们就可以愉快地使用Mybatis-Plus进行开发了。下面是一些示例代码:

1.新增用户

User user = new User();
user.setUsername("Tom");
user.setPassword("123456");
user.setAge(18);
user.setGender(1);
user.setEmail("tom@qq.com");
user.setMobile("13800138000");
user.setRemark("Hello World!");
userMapper.insert(user);

2.查询用户列表

List<User> userList = userMapper.selectList(new QueryWrapper<User>()
        .eq("status", 1)
        .like("username", "Tom")
        .orderByDesc("age"));

这里使用了MybatisPlus的查询条件构造器,可以方便地拼接查询条件,而且还支持分页查询、自定义SQL查询等。

3.更新用户信息

User user = userMapper.selectById(userId);
if (user != null) {
    user.setAge(20);
    user.setEmail("tom@163.com");
    userMapper.updateById(user);
}

使用MybatisPlus的updateById方法可以轻松地实现更新操作,不需要再手动拼接SQL语句。

4.删除用户信息

userMapper.deleteById(userId);

以上就是在实际开发中使用Mybatis-Plus的一些经验和教训,希望可以对您有所帮助。如果您有任何问题,请随时与我联系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lishiyueup

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值