mybatisplus配置详解
目录
配置
1.基本配置mybatis-config.xml
1.configLocation配置
springboot在application.yml文件添加(config-location)
spring在application.xml文件添加(configLocation)
2.mapperLocation配置
springboot在application.yml文件添加(mapper-locations)
3.typeAliases
2.进阶设置
1.mapUnderscoreToCamelCase驼峰映射
2.cacheEnabled缓存配置
3.DB策略配置
1.Idtype(配置后可省略注解@TableId)
2.tablePrefix表前缀(配置后可省略注解@TableName)
配置
在mp中有大量的配置,其中有一部分时mybatis原生的配置,另一部分是mp的配置,详情mybatis配置文件官方文档https://mybatis.org/mybatis-3/zh/configuration.html
1.基本配置mybatis-config.xml
在mybatis-config.xml文件添加插件
<plugins><!-- 配置分页插件--><plugin interceptor="com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor"><property name="@page" value="com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor"/><property name="page:dbType" value="MYSQL"/></plugin> </plugins>
1.configLocation配置
springboot在application.yml文件添加(config-location)
将单独的mybatis配置文件添加到config-location中
- 类型:
String
- 默认值:
null
#导入全局配置文件
mybatis-plus:config-location: classpath:mybatis-config.xml
这样就可以直接使用Page分页
@Autowired(required = false)User_plusDAO user_plusDAO;@Testpublic void selectPage(){//分页设置IPage<User_plus> ipage=new Page<>();//当前页ipage.setCurrent(2);//每页数量ipage.setSize(2);//条件QueryWrapper<User_plus> wrapper=new QueryWrapper<>();wrapper.eq("age",20);IPage<User_plus> page = user_plusDAO.selectPage(ipage,wrapper);System.out.println("当前页:"+page.getCurrent());System.out.println("总页数:"+page.getPages());System.out.println("总条数:"+page.getTotal());System.out.println("查询当前页的集合:"+page.getRecords());}
spring在application.xml文件添加(configLocation)
<!-- 3、配置mybatis-plus的sqlSessionFactory --><bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
<!-- 配置数据源 --><property name="dataSource" ref="dataSource" />
<!-- 配置mybatis全局配置文件 --><property name="configLocation" value="classpath:mybatis-config.xml"/></bean>
2.mapperLocation配置
在DAO接口创建方法
public interface User_plusDAO extends BaseMapper<User_plus> {public List<User_plus> findAll();
}
在resources下创建mapper文件夹存放mapper文件,创建UserMapper.xml文件实现DAO接口
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="mapper.User_plusDAO"><!-- 需要执行的sql语句,例如select,insert,update,delete,--><select id="findAll" resultType="pojo.User_plus">SELECT id,name,age,email FROM user</select>
</mapper>
springboot在application.yml文件添加(mapper-locations)
mybatis-plus:#mybatis配置文件config-location: classpath:mybatis-config.xml#mapper配置文件。可能有多个,所以Mapper.xml结尾的都添加进来mapper-locations: classpath:mapper/*Mapper.xml
即可测试方法
spring在application.xml文件添加(mapperLocation)
<!-- 3、配置mybatis-plus的sqlSessionFactory --><bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
<!-- 配置数据源 --><property name="dataSource" ref="dataSource" />
<!-- 配置mybatis全局配置文件 --><property name="configLocation" value="classpath:mybatis-config.xml"/>
<!-- 配置mapper全局配置文件 --><property name="mapperLocation" value="classpath:mapper/*.xml"/></bean>
3.typeAliases
springboot在application.yml文件添加(mapper-locations)
#导入全局配置文件
mybatis-plus:#mybatis配置文件config-location: classpath:mybatis-config.xml#mapper配置文件mapper-locations: classpath:mapper/*Mapper.xml#批量注册指定包下的类type-aliases-package: pojo
类注册之后,在UserMapper.xml文件中就可以直接使用类名,不需要加包名
<mapper namespace="mapper.User_plusDAO"><!-- 需要执行的sql语句,例如select,insert,update,delete,-->
<!-- 直接用类名,与前文中可对比--><select id="findAll" resultType="User_plus">SELECT id,name,age,email FROM user</select>
</mapper>
spring在application.xml文件添加(mapperLocation)
<!-- 3、配置mybatis-plus的sqlSessionFactory --><bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
<!-- 配置数据源 --><property name="dataSource" ref="dataSource" />
<!-- 配置mybatis全局配置文件 --><property name="configLocation" value="classpath:mybatis-config.xml"/>
<!-- 配置mapper全局配置文件 --><property name="mapperLocation" value="classpath:mapper/*.xml"/>
<!-- 加载实体类 --><property name="typeAliasesPackage" value="pojo"/></bean>
2.进阶设置
1.mapUnderscoreToCamelCase驼峰映射
springboot在application.yml文件添加
#导入全局配置文件
mybatis-plus:#mybatis配置文件#config-location: classpath:mybatis-config.xml#mapper配置文件mapper-locations: classpath:mapper/*Mapper.xml#批量注册指定包下的类type-aliases-package: pojo#类属性与表字段的驼峰映射,mybatiplus默认true开启,mybatis需要手动配置,且config-location和configuration不能同时出现configuration:map-underscore-to-camel-case: false
spring在application.xml文件添加
<!-- 3、配置mybatis-plus的sqlSessionFactory --><bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean">
<!-- 配置数据源 --><property name="dataSource" ref="dataSource" />
<!-- 配置mybatis全局配置文件 --><property name="configLocation" value="classpath:mybatis-config.xml"/>
<!-- 配置mapper全局配置文件 --><property name="mapperLocation" value="classpath:mapper/*.xml"/>
<!-- 加载实体类 --><property name="typeAliasesPackage" value="pojo"/>
<!-- 配置驼峰映射configLocation和configuration不能同时出现否则报错 --><property name="configuration" ><bean class="com.baomidou.mybatisplus.core.MybatisConfiguration"><property name="mapUnderscoreToCamelCase" value="false"/></bean></property></bean>
2.cacheEnabled缓存配置
springboot在application.yml文件添加
mybatis-plus:#mybatis配置文件#config-location: classpath:mybatis-config.xml#mapper配置文件mapper-locations: classpath:mapper/*Mapper.xml#批量注册指定包下的类type-aliases-package: pojoconfiguration:#类属性与表字段的驼峰映射,mybatiplus默认true开启,mybatis需要手动配置map-underscore-to-camel-case: false#缓存cache-enabled: false
spring在application.xml文件添加
<property name="configuration" ><bean class="com.baomidou.mybatisplus.core.MybatisConfiguration"><property name="cacheEnabled" value="false"/></bean></property>
3.DB策略配置
1.Idtype(配置后可省略注解@TableId)
springboot在application.yml文件添加
mybatis-plus:#全局配置global-config:#数据库配置db-config:#主键策略id-type: auto
spring在application.xml文件添加
<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean"><property name="globalConfig"><bean class="com.baomidou.mybatisplus.core.config.GlobalConfig"><property name="dbConfig"><bean class="com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"><property name="idType" value="AUTO"/></bean></property></bean></property></bean>
2.tablePrefix表前缀(配置后可省略注解@TableName)
springboot在application.yml文件添加
mybatis-plus:#全局配置global-config:#数据库配置db-config:#表名前缀为tb_,表名为前缀拼接类名(小写)table-prefix: tb_
spring在application.xml文件添加
<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean"><property name="globalConfig"><bean class="com.baomidou.mybatisplus.core.config.GlobalConfig"><property name="dbConfig"><bean class="com.baomidou.mybatisplus.core.config.GlobalConfig$DbConfig"><property name="tablePrefix" value="tb_"/></bean></property></bean></property></bean>
mybatisplus配置详解相关推荐
- springboot+druid+mybatis-Plus 配置详解
网上找了很多关于springboot+druid+mybatis-Plus的配置,遇见的很多问题 也没找到好的解决方案.折腾了好几天终于自己配置通过了. springboot的pom文件 1 < ...
- easycode 表配置_idea的easyCode的 MybatisPlus模板的配置详解
EasyCode 插件 EasyCode 插件 是一款根据表结构生成代码的很方便的Idea插件, 强烈推荐. 并且可以自定义模板来控制生成的类 我在使用的过程中发现一些问题,现在把解决办法记录下来, ...
- mybatis获取表名_mybatis plus 的动态表名的配置详解
mybatis plus简介 详见mybatis plus的官网 业务要求 业务上要求存储数据的时候根据某个字段动态的选择数据要存储的表. 如根据code字段: code->[1001,1002 ...
- elasticsearch-.yml(中文配置详解)
此elasticsearch-.yml配置文件,是在$ES_HOME/config/下 elasticsearch-.yml(中文配置详解) # ======================== El ...
- (ASA) Cisco Web ××× 配置详解 [三部曲之一]
(ASA) Cisco Web ××× 配置详解 [三部曲之一] 注意:本文仅对Web×××特性和配置作介绍,不包含SSL ×××配置,SSL ×××配置将在本版的后续文章中进行介绍. 首先,先来 ...
- mybatis 同名方法_MyBatis(四):xml配置详解
目录 1.我们将 数据库的配置语句写在 db.properties 文件中 2.在 mybatis-configuration.xml 中加载db.properties文件并读取 通过源码我们可以分析 ...
- logback节点配置详解
logback节点配置详解 一:根节点 <configuration></configuration> 属性 : debug : 默认为false ,设置为true时,将打印出 ...
- PM配置详解之一:企业结构
1.维护计划工厂 功能说明 在公司结构中定义维护工厂(通常已经作为后勤工厂存在)和维护计划工厂(简称计划工厂). 维护工厂:设备所安装的位置,如某机组安装在合营公司,那么合营公司就是此机组的维护工厂, ...
- 转 Log4j.properties配置详解
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
最新文章
- 【BZOJ】2120: 数颜色
- AT2370 Piling Up
- w7系统计算机网络密码是什么,解答win7系统共享弹出Windows安全窗口提示输入网络密码的详细教程...
- python基础之内建函数(二)
- 在大数据圈你不知道的15个新技术
- 定制控件消息处理函数
- MySQL高级知识(七)——索引面试题分析
- 国内外著名CAD、CAM雕刻软件介绍
- 恢复Windows10的经典照片查看器
- 针对TCP连接的网络监控平台—AINA Lyzer
- 文献阅读_Radiogenomic analysis of vascular endothelial growth factor in patients with diffuse gliomas
- 区块链技术应用到现实场景中,是个什么样?
- 影响网络营销成功的3大因素
- 喜报丨武汉无名创新科技有限公司荣获国家“高新技术企业”证书,将助力高校科研与竞赛无人机产业加速发展!
- jQuery-获取/设置 属性(标准属性,自定义属性)和内容
- 无法安装驱动程序 此计算机上不存在英特尔适配器,win10系统提示无法安装驱动程序,此计算机中没有Intel适配器怎么办...
- 分页查询:前端分页和后端分页
- AIoT时代存储如何升级?长江存储发布高速闪存芯片UFS 3.1
- 解决oracle11G安装84%报错 出现Error in invoking target
- 中文热门开源项目Top100,你知道多少?