SpringBoot配置Mybatis的两种方式(通过XML配置和通过YML配置文件配置)

一、 通过XML的方式配置Mybatis

  1. /src/main/resource下创建Mybatis配置文件 mybatis-config.xml 和 映射文件目录mapper
  2. 在application.yml指定Mybatis配置文件、映射文件的位置
    可选:
    - mybatis.config-location:配置 mybatis-config.xml 路径mybatis-config.xml 中配置 MyBatis 基础属性
    - mybatis.mapper-locations:配置 Mapper 对应的 XML 文件路径
    - mybatis.type-aliases-package:配置项目中实体类包路径

application.yml

mybatis:#标注mybatis配置文件的位置config-location: classpath:mybatis-config.xml#标注待解析的mapper的xml文件位置mapper-locations: classpath:mapper/*.xml #标注实体类位置type-aliases-package: com.gzu.photo.entity 

mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><settings><!-- #开启mybatis驼峰式命名规则自动转换 --><setting name="mapUnderscoreToCamelCase" value="true" /></settings><typeAliases><typeAlias alias="Integer" type="java.lang.Integer" /><typeAlias alias="Long" type="java.lang.Long" /><typeAlias alias="HashMap" type="java.util.HashMap" /><typeAlias alias="LinkedHashMap" type="java.util.LinkedHashMap" /><typeAlias alias="ArrayList" type="java.util.ArrayList" /><typeAlias alias="LinkedList" type="java.util.LinkedList" /></typeAliases>
</configuration>

二、在appllication.yml中直接配置Mybatis

  • 可配置的属性
  • 也可以通过查看源码org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration了解所有可以配置的属性(可参考我的另一篇博客SpringBoot自动配置原理)
    源码中部分配置属性截图
    在这里插入图片描述
mybatis:configuration:#开启mybatis驼峰式命名规则自动转换map-underscore-to-camel-case: true....

注意

两种配置方式只能二选一,不能同时使用application.yml中的configurationmybatis-config.xml文件配置mybabis

即: application.ymlconfigurationconfigLocation 两个属性不能同时存在,否则会报错:

Property 'configuration' and 'configLocation' can not specified with together

参考

  • SpringBoot整合mybatis——配置mybatis驼峰命名规则自动转换
  • SpringBoot整合Mybatis之xml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/330169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cmw500综合测试仪使用_山西优质三相直流电阻测试仪图片-南电合创

感谢您关注我们的产品&#xff0c;本公司除了有此产品介绍以外&#xff0c;还有太阳能接线盒测试仪&#xff0c;绝缘电阻测试仪&#xff0c;回路电阻测试仪&#xff0c;变压器直流电阻测试仪&#xff0c;无线高压核相仪&#xff0c;微机继电保护测试仪&#xff0c;电能质量分析…

内连接,外链接(左连接、右连接、全连接),交叉连接大总结

转载自 内连接&#xff0c;外链接&#xff08;左连接、右连接、全连接&#xff09;&#xff0c;交叉连接大总结1.什么是连接查询呢&#xff1f;概念&#xff1a;根据两个表或多个表的列之间的关系&#xff0c;从这些表中查询数据。目的&#xff1a;实现多个表查询操作。2.分类&…

redis创建集群报错can‘t connect to node 192.168.163.203

【README】 创建集群报错 cant connect to node 192.168.163.203 [rootcentos201 ~]# /usr/local/redis-cluster/bin/redis-trib.rb create --replicas 0 192.168.163.201:6379 192.168.163.202:6379 192.168.163.203:6379 >>> Creating cluster Connecting to no…

SpringMVC控制器方法获取参数时@RequestParam注解加与不加的区别

问题 在使用SpringMVC时获取参数时&#xff0c;加与不加RequestParam都会自动传入参数值&#xff0c;那加与不加的区别是什么&#xff1f; 测试 GetMapping("test1")public String test1(String s){return "参数&#xff1a;"s;}GetMapping("test2&…

如何设置电脑自动锁屏_这个手机锁屏密码竟可以根据时间而变化!密码每分钟都会发生改变...

如今&#xff0c;手机已经成为了我们生活中不可或缺的一部分。手机里面承载了我们太多的个人信息、生活隐私&#xff0c;财产安全等等。为了防止别人偷窥我们的手机&#xff0c;我们都会将手机设置锁屏密码。相信大家锁屏设置的都是图形或者数字密码。但是这样的密码很容易被人…

我猜,每个程序员对着电梯都想过调度算法吧

转载自 我猜&#xff0c;每个程序员对着电梯都想过调度算法吧 传统电梯调度算法 1.1 先来先服务算法&#xff08;FCFS&#xff09; 先来先服务&#xff08;FCFS-First Come First Serve&#xff09;算法&#xff0c;是一种随即服务算法&#xff0c;它不仅仅没有对寻找楼层进行…

redis集群添加节点报错Either the node already knows other nodes (check with CLUSTER NODES) or contains some k

【README】 redis集群添加节点报错 [ERR] Node 192.168.163.202:6380 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0. 【1】 原因 导致异常的主要原因是该节点中默认生成的配置或历史存储数据…

SpringMVC 参数校验

SpringMVC 可以通过使用注解的方式对参数进行校验&#xff0c;省去参数校验的代码 引入依赖 Spring项目需引入 <dependency><groupId>org.hibernate.validator</groupId><artifactId>hibernate-validator</artifactId><version>6.0.7.F…

linux入门_Linux超详细0基础入门篇(一)

首先要感谢大康老师对我在Linux操作系统上的教导。今天来讲一下用途广泛的Linux的基础入门教程仅仅是做入门使用&#xff0c;如果想更加深入的学习那就需要自己做探索了。本次例子使用的是kali linux(ARM架构)是基于Debian的Linux发行版本&#xff0c;可能会与其他版本操作有所…

教你如何监控 Java 线程池运行状态

转载自 干货 | 教你如何监控 Java 线程池运行状态 之前写过一篇 Java 线程池的使用介绍文章《线程池全面解析》&#xff0c;全面介绍了什么是线程池、线程池核心类、线程池工作流程、线程池分类、拒绝策略、及如何提交与关闭线程池等。 但在实际开发过程中&#xff0c;在线程池…

算法设计与分析:(一)时间复杂度分析

数学基础 设f和g是定义域为自然数集N上的函数 存在正整数c、n&#xff0c;使0<f(n)<cg(n)成立&#xff0c;称f(n)的渐进上界是g(n)&#xff0c;记作f(n)O(g(n))存在正整数c、n&#xff0c;使0<cg(n)<f(n)成立&#xff0c;则称f(n)渐进下界是g(n)&#xff0c;记作…

redis集群3种模式

【README】 转自&#xff1a; https://segmentfault.com/a/1190000022808576 &#xff08;好文章&#xff09; Redis 支持三种集群方案 主从复制模式Sentinel&#xff08;哨兵&#xff09;模式Cluster 模式【1】主从复制模式 主从复制的作用 通过持久化功能&#xff0…

ios签名软件_苹果企业签名常常掉怎样处理【苹果签名吧】

对于使用ios苹果系统的开发者来说&#xff0c;可以在苹果app商店下载现在陈列的APP软件&#xff0c;但是没有陈列的APP软件只能使用苹果签名&#xff0c;通过上传到app签名渠道的方法下载。这种方法的缺点是&#xff0c;如果苹果ios签名无效(即签名丢失)&#xff0c;应用程序无…

算法设计与分析:(二)动态规划

目录设计思想使用动态规划的必要条件适用动态规划算法解决的问题的特征&#xff1a;优化原则&#xff1a;动态规划的一般步骤以背包问题为例动态规划本质上为带备忘录的穷举算法。对动态规划问题&#xff0c;直接套框架即可&#xff1a;问题有什么「状态」&#xff0c;有什么「…

开发app用户协议_APP软件开发如何让用户更开心地付钱?

原标题&#xff1a;APP软件开发如何让用户更开心地付钱&#xff1f;在一些付费产品中&#xff0c;明明花费了很多心思和精力制作的产品却被用户嫌弃&#xff0c;付钱的时候不情不愿。这是什么原因造成的呢&#xff1f;一、如何判断服务和虚拟商品的价值&#xff1f;比如在线的音…

漫画:什么是八皇后问题

转载自 漫画&#xff1a;什么是八皇后问题&#xff1f;题目是什么意思呢&#xff1f;国际象棋中的皇后&#xff0c;可以横向、纵向、斜向移动。如何在一个8X8的棋盘上放置8个皇后&#xff0c;使得任意两个皇后都不在同一条横线、竖线、斜线方向上&#xff1f;让我们来举个栗子&…

redis-java客户端jedis测试

【README】 本文旨在记录 jedis 包连接redis集群的开发方式&#xff0c;并对api做简单测试&#xff0c;api不会深入&#xff1b; maven引入的 jedis依赖 <dependencies><dependency><groupId>redis.clients</groupId><artifactId>jedis</a…

MySQL优化(二):索引的类型、匹配原则、创建原则

目录索引的优缺点索引类型聚簇索引&#xff08;主键索引&#xff09;非聚簇索引&#xff08;二级索引、辅助索引&#xff09;索引匹配的原则最左匹配原则无法使用索引的场景索引创建的原则使不使用索引的依据到底是什么&#xff1f;参考索引的优缺点 常见的索引结构有: B 树&a…

jedis对redis键加锁+解锁+事务提交

【README】 redis的java客户端对键加锁和解锁&#xff08;Jedis.watch() Jedis.unwatch() &#xff09;&#xff1b; 【1】代码 /*** redis加锁-watch * 【场景描述】&#xff1a; watch命令就是标记一个键&#xff0c;如果标记了一个键&#xff0c;* 在提交事务前如果该键…

win10关闭快速启动_装系统不求人,快速制作启动U盘,傻瓜式重装WIN10

在以前如果我们的电脑系统损坏&#xff0c;无法进入WINDOWS系统&#xff0c;在需要重装WINDOWS系统时&#xff0c;一般的做法是&#xff0c;下载一个WINDOWS系统镜像&#xff0c;制作一个PE启动盘&#xff0c;在PE里安装系统镜像。这样传统的WINDOWS系统重装过程麻烦且耗时。而…