欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > Mybatis-plus学习总结

Mybatis-plus学习总结

2025/3/14 11:17:17 来源:https://blog.csdn.net/2301_79714460/article/details/143510470  浏览:    关键词:Mybatis-plus学习总结

前言:

最近开始慢慢学一些比较便捷,比较常见的框架。拓展一下技术栈。第一个框架就是mybatis-plus这个框架其实早就接触过,当时写的时候没咋用,还是手动写sql语句,总觉得它生成的不太靠谱。现在开始学起来,也是另有一种不同感觉的。

个人认为:mybatis-plus虽然是一个比较好用的框架,很多的sql语句都不用自己写 ,都有直接可以调用的,编写一些简单的项目,实现起来会非常的快速,便捷。但是他将很多的sql封装了,语句的透明度没有这么高了,而且你要写一个较为复杂的查询语句的时候,就要自己重新写了。而且很多的sql语句也是用不到的,比较笨重,很难维护。。

mybatis-plus简介:MyBatis-Plus(简称 MP)是 MyBatis 的增强工具,它简化了 MyBatis 的配置和开发,提供了许多常用功能的封装,能够让开发者快速进行 CRUD(增、删、改、查)操作,同时支持复杂的查询和事务控制等功能。它减少了冗余代码的编写,增强了开发效率。

1、自动生成crud方法

public interface UserMapper extends BaseMapper<User> {// 你可以在这里添加自定义的方法
}

在继承的BaseMapper里面,封装了很多,如:

  • insert(T entity):插入一条记录。
  • deleteById(Serializable id):根据 ID 删除记录。
  • updateById(T entity):根据 ID 更新记录。
  • selectById(Serializable id):根据 ID 查询记录。
  • selectList(Wrapper<T> queryWrapper):条件查询。

具体使用方法: 

        List<Author> list=authorMapper.selectList(null);//null就是没有查询的条件//创建一个用来设置查询条件的对象;QueryWrapper<Author> wrapper=new QueryWrapper<Author>();wrapper.eq("name","张三");//条件name等于张三的。List<Author> list=authorMapper.selectList(wrapper);UpdateWrapper uw =new UpdateWrapper();uw.eq("id",a.getId());authorMapper.update(a,uw);//更新一个id=a.getId(); 的那条数据。//eq是equals,ne就是not equals()

还有很多分页,和其他增删改查的语句,这里就不一一列举了,若有兴趣可以写。

2、条件构造器

这个其实上面举例的时候就已经写过了。下面是较为详细的解析。

MyBatis-Plus 提供了 QueryWrapperUpdateWrapper 用于构造 SQL 条件。

  • QueryWrapper:用于查询条件构建。
  • UpdateWrapper:用于更新条件构建。
// 查询 name 为 "John" 且 age 大于 18 的用户
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "John").gt("age", 18);
List<User> userList = userMapper.selectList(queryWrapper);

 通过 QueryWrapperUpdateWrapper 可以方便地构造复杂的 SQL 条件,例如,排序、模糊查询、区间查询、多个字段的条件等。

3、自动填充功能

MyBatis-Plus 支持自动填充功能,适用于时间戳、创建人、修改人等字段,减少手动填充这些信息的操作。

例如,自动填充字段 createTimeupdateTime

@TableField(fill = FieldFill.INSERT)
private Date createTime;@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;

在实体类字段上使用 @TableField 注解标注需要自动填充的字段,MyBatis-Plus 会在执行插入或更新操作时自动填充这些字段。

其实后面还有很多细节的分页查询,代码生成器等等的小功能,这里就不一一列举了。

4、pom.xml配置

        <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.5.9</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.9</version></dependency>

总结

MyBatis-Plus 在 MyBatis 的基础上进行了一些增强,极大地简化了开发者的工作,提高了开发效率。它通过提供自动化的 CRUD 操作、条件构造器、分页插件、代码生成等功能,使得开发者能够更专注于业务逻辑的开发。

mybatis-plus官网:MyBatis-Plus 🚀 为简化开发而生

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词