Mybatis Plus

Mybatis Plus是一个在Mybatis基础上扩展的框架,提供了包括自动 CRUD 在内的诸多功能,简化开发流程。同时,Mybatis Plus Generator 提供了更强大的代码生成器,能生成 Entity、Mapper、Service、Controller 等代码。集成 Mybatis Plus 包括添加依赖、配置 Spring,以及可选的插件配置。Mybatis Plus 的 CURD 操作非常便捷,通过 BaseMapper 接口和 EntityWrapper 实现简单的数据操作,还可以进行多条件分页查询。代码生成器可以自动生成 Entity、Mapper 等代码,提高开发效率。
摘要由CSDN通过智能技术生成

Mybatis Plus是扳手,那Mybatis Generator就是生产扳手的工厂。
Mybatis Plus:国人团队苞米豆在Mybatis的基础上开发的框架,在Mybatis基础上扩展了许多功能,荣获了2018最受欢迎国产开源软件第5名,当然也有配套的↓
Mybatis Plus Generator:同样为苞米豆开发,比Mybatis Generator更加强大,支持功能更多,自动生成Entity、Mapper、Service、Controller等
Mybatis-Plus是一个Mybatis的增强工具,它在Mybatis的基础上做了增强,却不做改变。我们在使用Mybatis-Plus之后既可以使用Mybatis-Plus的特有功能,又能够正常使用Mybatis的原生功能。Mybatis-Plus(以下简称MP)是为简化开发、提高开发效率而生,但它也提供了一些很有意思的插件,比如SQL性能监控、乐观锁、执行分析等。

一、 集成步骤↓:(首先,你要有个spring项目)
集成依赖,pom中加入依赖即可,不多说:
Java代码 收藏代码

com.baomidou mybatis-plus ${mybatis-plus.version} org.apache.velocity velocity-engine-core 2.0

.
.
.
.
.
.
.
说明:笔者使用的版本为:mybatis-plus.version=2.1-gamma,上边的代码中有两个依赖,第一个是mybatis-plus核心依赖,第二个是使用代码生成器时需要的模板引擎依赖,若果你不打算使用代码生成器,此处可不引入。
注意:mybatis-plus的核心jar包中已集成了mybatis和mybatis-spring,所以为避免冲突,请勿再次引用这两个jar包。

.
.
.
.
.
.
.

二、 在spring中配置MP:











<!-- MP 全局配置注入 -->  
<property name="globalConfig" ref="globalConfig" />  

.
.
.
.
.
.
.
.

DAO接口所在包名,Spring会自动查找其下的类




<tx:annotation-driven transaction-manager=“transactionManager”
proxy-target-class=“true” />
注意:只要做如上配置就可以正常使用mybatis了,不要重复配置。MP的配置和mybatis一样,都是配置一个sqlSessionFactory,只是现在所配置的类在原本的SqlSessionFactoryBean基础上做了增强。插件等配置请按需取舍。
插件配置,按需求配置就可以,此处把可以配置的插件都列了出来,具体的请看代码注释:
Java代码 收藏代码












    <!-- SQL 执行性能分析,开发环境使用,线上不推荐。 maxTime 指的是 sql 最大执行时长 -->  
    <plugin interceptor="com.baomidou.mybatisplus.plugins.PerformanceInterceptor">  
        <property name="maxTime" value="2000" />  
        <!--SQL是否格式化 默认false -->  
        <property name="format" value="true" />  
    </plugin>  

    <!-- SQL 执行分析拦截器 stopProceed 发现全表执行 delete update 是否停止运行 该插件只用于开发环境,不建议生产环境使用。。。 -->  
    <plugin interceptor="com.baomidou.mybatisplus.plugins.SqlExplainInterceptor">  
        <property name="stopProceed" value="false" />  
    </plugin>  
</plugins>  

.
.

.


.
.

注意:执行分析拦截器和性能分析推荐只在开发时调试程序使用,为保证程序性能和稳定性,建议在生产环境中注释掉这两个插件。
数据源:(此处使用druid)

<!-- 监控数据库 -->  
<!-- <property name="filters" value="stat" /> -->  
<!--     <property name="filters" value="mergeStat" />-->  

.
.
.
.
.
.
.
.
.
到此,MP已经集成进我们的项目中了,下面将介绍它是如何简化我们的开发的。
.
.
.
.
.
.

**

三、 简

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值