首页 > 其他分享 >MyBatis-Plus

MyBatis-Plus

时间:2023-09-05 21:13:45浏览次数:25  
标签:插件 内置 自定义 支持 Plus MyBatis 主键

MyBatis-Plus(简称 MP):是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

特性:

  • 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
  • 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
  • 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
  • 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
  • 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题
  • 支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作
  • 支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere )
  • 内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用
  • 内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询
  • 分页插件支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer 等多种数据库
  • 内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询
  • 内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作

 

标签:插件,内置,自定义,支持,Plus,MyBatis,主键
From: https://www.cnblogs.com/szza/p/17680784.html

相关文章

  • MyBatisPlus翻新bug记录
    今天把老项目翻新成使用MyBatisPlus.偶遇bug.LambdaUpdateWrapper<AddressBook>wrapper=newLambdaUpdateWrapper<>();wrapper.set(AddressBook::getIsDefault,0);wrapper.eq(AddressBook::getUserId,BaseContext.getCurrentId());addressBookMapper.update(null,wrapper)......
  • 深入解析 MyBatis 中的 <foreach> 标签:优雅处理批量操作与动态 SQL
    在当今的Java应用程序开发中,数据库操作是一个不可或缺的部分。MyBatis作为一款颇受欢迎的持久层框架,为我们提供了一种优雅而高效的方式来管理数据库操作。在MyBatis的众多特性中,<foreach>标签无疑是一个强大的工具,它使得在SQL语句中进行动态循环迭代变得轻而易举。本文将带您深入探......
  • 掌握 MyBatis<choose>标签:优化动态查询条件的利器
    当谈到在Java应用程序中进行数据库访问时,MyBatis是一个备受欢迎的持久层框架。它的强大之处在于提供了灵活性和可定制性,使得数据库操作变得更加简便。在这篇文章中,我们将深入介绍MyBatis中的<choose>标签,它是一个有趣且功能强大的元素,用于在SQL映射文件中进行条件选择。MyBat......
  • JPA-querydsl增强工具,query-dsl-plus,现在已开源并推送到mvnrepository
    前言约定俗成......一种接口通用的查询方法,简化开发,增强性能,让更多的精力放在更复杂的业务上。即--按照约定,将查询条件封装成string,前端随时随意更改,但是后台不用任何调整,一个查询接口就能完成绝大多数条件查询。由于喜欢使用JPA,所以后续就接触了query-dsl,但是呢,随着需求的变更,......
  • Vue 3 之 Element Plus 之 Pagination 的 坑
    版本信息:vue.js3.3.4ElementPlus2.3.12浏览器ChromeVersion116-- 坑描述试验ElementPlus之分页时,出现了异常——之前开发的弹窗打不开了。 Pagination分页:https://element-plus.org/zh-CN/component/pagination.html 在页面加里了一些弹窗(对话框):<el-......
  • MybatisPlus处理Mysql的json类型
    MybatisPlus处理Mysql的json类型1、在数据库表定义JSON字段;2、在实体类加上@TableName(autoResultMap=true)、在JSON字段映射的属性加上@TableField(typeHandler=JacksonTypeHandler.class);1.实体类中有个属性是其他对象,或者是List;在数据库中存储时使用的是mysql的json格式,此......
  • Mybatis-plus-join使用、mybatis连表
    publicinterfacePlanDayMapperextendsMPJBaseMapper<PwPlanDayPO>{}MPJLambdaWrapper<PwPlanDayPO>wrapper=MPJWrappers.lambdaJoin(PwPlanDayPO.class);wrapper.leftJoin(SysStaffPO.class,SysStaffPO::getStaffId,PwPlanDayPO::g......
  • MyBatisPlus操作Oracle(插入数据主键自增)
    示例代码:代码不需要修改,需要操作的是相对应的数据库,在Oracle中是不支持ID自增的,这时候我们就需要手动设置一些规则,来让ORM框架支持自增(实际是数据库层面做的)MyBatisPlus操作Oracle关于oracle11g和12c发行时间以及区别:Oracle11g是Oracle公司在2007年发行的一款数据库软管......
  • Mybatis的saveOrUpdateBatch________批量保存或更新
    一、saveOrUpdateBatch介绍Mybatis是一种优秀的ORM框架,为了提高效率,Mybatis提供了批量执行操作的方法。saveOrUpdateBatch是其中一个方法,它可以保存或更新多组数据。二、怎样使用saveOrUpdateBatch要使用Mybatis的saveOrUpdateBatch方法,您需要先创建一个Mapper接口,并在其中定义......
  • mybatis-plus自动生成代码
    1.引入pom依赖<!--mybatis-plusgenerator--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.5.2</version></dependency><!--velocity--&g......