关于Mybatis Plus中BaseMapper和IService

这篇具有很好参考价值的文章主要介绍了关于Mybatis Plus中BaseMapper和IService。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.BaseMapper接口

BaseMapper是Mybatis Plus提供的基础Mapper接口。它提供了常见的CRUD操作方法,如插入、修改、删除和查询等。BaseMapper是一个通用接口,可以适用于各种实体类的操作。这减少了开发人员需要编写的代码量,提高了开发效率。


2.IService接口

IService是Mybatis Plus提供的服务接口。它提供了一些高级的CRUD操作方法,如批量插入、批量删除和分页查询等。IService接口是一个抽象的接口,可以根据实际需要进行实现。通常与BaseMapper接口结合使用,提供更加灵活和高效的数据操作。


3.BaseMapper和IService的区别

BaseMapper接口提供了基本的CRUD操作方法,而IService接口则提供了更高级的CRUD操作方法,如批量插入、批量删除和分页查询等。IService接口还提供了一些其他的功能,如缓存管理、排序和字段自动填充等。BaseMapper接口和IService接口的使用方式和实现也有所不同。


4.最佳实践

建议在使用Mybatis Plus时,首先使用BaseMapper接口进行基本的CRUD操作。如果需要更高级的操作,可以根据具体需求进行IService接口的实现。在实现IService接口时,可以根据具体需求进行方法的定义和实现,提供更加灵活和高效的数据操作和其他实用功能。

总之,Mybatis Plus提供了BaseMapper和IService接口用于CRUD操作。BaseMapper提供了基本的CRUD操作方法,而IService提供了更高级的操作和其他实用功能。BaseMapper和IService的使用和实现取决于具体需求和要求。


5.ruoyi-vue-pro编码规范

1.禁止在 Controller、Service 中,直接进行 MyBatis Plus 操作。原因是:大量 MyBatis 操作散落在 Service 中,会导致 Service 的代码越来乱,无法聚焦业务逻辑。并且,通过只允许将 MyBatis Plus 操作编写 Mapper 层,更好的实现 SELECT 查询的复用,而不是 Service 会存在很多相同且重复的 SELECT 查询的逻辑。

错误示例:

关于Mybatis Plus中BaseMapper和IService

正确示例:

关于Mybatis Plus中BaseMapper和IService


2.Mapper 的 SELECT 查询方法的命名,采用 Spring Data 的 “Query methods” (opens new window)策略,方法名使用 selectBy查询条件 规则。例如:

关于Mybatis Plus中BaseMapper和IService


3.优先使用 LambdaQueryWrapper 条件构造器,使用方法获得字段名,避免手写 “字段” 可能写错的情况。例如:

关于Mybatis Plus中BaseMapper和IService


4.简单的单表查询,优先在 Mapper 中通过 default 方法实现。例如:
关于Mybatis Plus中BaseMapper和IService文章来源地址https://www.toymoban.com/news/detail-478107.html

到了这里,关于关于Mybatis Plus中BaseMapper和IService的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • mybatis-plus使用this.baseMapper.update和updateById更新null值不生效

    mybatis-plus 在 serviceImpl 层可以直接使用 this.baseMapper.update 和 updateById , 如果更新的字段值是null,这时候需更新为 null 的字段更新不成功。打印的 sql 也没有更新为 null 的字段。 原因: 解决: 1)当需要设置可能为null的字段,需要用 lambdaUpdate() 使用方法为: 或者 实体类需更

    2024年02月13日
    浏览(34)
  • 【MyBatis Plus】深入探索 MyBatis Plus 的条件构造器,自定义 SQL语句,Service 接口的实现

    在前文中,介绍了 MyBatis Plus 的一些基础功能,我们发现使用MyBatis Plus 可以非常简单的就实现对单表的增删改查操作。但是这些操作对应的 SQL 语句都非常简单,如果是面对一些复杂的 SQL 或者多表查询这样的情况,就需要我们自己来重新组织 SQL 语句了。 本文将重点探索 M

    2024年02月07日
    浏览(42)
  • BaseMapper接口的使用

    Java知识点总结:想看的可以从这里进入 3.1、BaseMapper接口 MyBatis-Plus中的基本CRUD在内置的 BaseMapper 中都已得到了实现,我们可以直接使用,这样大大的简化了开发效率。 3.1.1、新增 在封装的 BaseMapper 中只有一个插入语句,因为海量数据插入单条SQL无法实行,所以mybatis-plus 把批

    2024年02月08日
    浏览(22)
  • 关于mybatis-plus中Ipage 、page 和pageUtils中的区别

         在使用人人开源框架的时候,通过逆向工程自动生成了分页功能,然而在使用的时候经常被关于Ipage和page等对象搞混,所以记录这篇文章用来介绍之间的区别 可以看见上面就是逆向工程帮忙生成的分页方法 里面出现了三个对象 pageUtils、page和Ipage 先来将pageUtils吧,pag

    2024年02月04日
    浏览(29)
  • mybatis-plus技巧--动态表名-多语句-拼接sql--关于mybatis的mysql分页查询总数的优化思考

    传入tableName参数就可以了,不过只能用$不能用# 因为#会发生预编译,然后会在表名上加引号’\\\'。 新建一个表名拦截类实现TableNameHandler mybatisPlus添加插件 实例: 每天按统计 如果表名为count则加上今天的时间 每次设置 直接设置名字,然后就会改变的。 需要在配置文件中的

    2024年01月16日
    浏览(36)
  • 关于com.baomidou:mybatis-plus-boot-starter:jar:unknown was not found解决办法

    原型 修改以后解决了

    2024年02月11日
    浏览(30)
  • 【Mybatis-Plus】Mybatis-Plus快速入门

    Mybatis-Plus是基于Mybatis的数据库操作组件,其实现的功能完全是Mybatis的功能拓展,不改变Mybatis的使用方式,可以兼容Mybatis的操作方式。 创建一个数据库、一个表进行基础操作: 创建一个Spring项目,项目通过Spring Initlizer创建,不导入任何依赖包,在POM.xml文件中进行依赖导入

    2024年02月07日
    浏览(39)
  • mybatis-plus-join mybatis-plus必备神器

    mybatis-plus-join是mybatis plus的一个多表插件,上手简单,十分钟不到就能学会全部使用方式,只要会用mp就会用这个插件,仅仅依赖了lombok,而且是扩展mp的构造器并非更改原本的构造器,不会对原有项目产生一点点影响,相信大多数项目都有这俩插件,四舍五入就是没依赖。

    2023年04月08日
    浏览(28)
  • Mybatis-Plus 进阶开发 -- Mybatis-Plus 入门教程(二)

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月10日
    浏览(39)
  • Mybatis-Plus(三)--Mybatis-Plus配置和条件构造器

    在MP中有大量的配置,其中有一部分是Mybatis原生的配置,另一部分是MP的配置,详情:https://mybatis.plus/config 【1】configLocation--自己单独的MyBatis配置的路径 SpringMVC的xml中写法: 【2】mapperLocations--MyBatis Mapper所对应的XML文件位置 如果你在Mapper中有自定义方法(XML中有自定义实现

    2024年02月15日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包