有这样的需求,mybatis
框架的mapper.xml
,即映射文件里,如果需要配置一个全局变量,然后,在所有的mapper.xml
里都能拿到使用。
这需求也不苛刻吧~
后来查了下,发现对于springboot
来说,配置这个竟然太简单。
因为是在mapper
的xml
里引用这个全局变量,所以mybatis
框架必须要先配置成功,如果不知道springboot的mybatis配置
,可以参考这篇[spring boot配置mybatis和事务管理];
仅仅需要在配置的mybatis
框架成功的基础之上,配置文件application.properties
里添加如下:
mybatis.configuration.variables.myConfigName=b
我是放到了与mybatis
配置放在了一起,具体如下:
mybatis.mapper-locations=classpath:mapper/*/*Mapper.xml
mybatis.type-aliases-package=znxd.tjzb.model.*
mybatis.configuration.mapUnderscoreToCamelCase=true
mybatis.configuration.variables.myConfigName=b1
其中myConfigName
就是全局变量的名,b1
即是对应的值。
在随便一个mapper.xml
里,如下这样引用:
<select id="selectTest" resultType="java.util.Map">
select * from ${myConfigName}
</select>
即,使用的是${}
来引用配置的全局变量,这样就可以使用了。
直接使用${myConfigName}可以获取到,但是如果我在if标签中获取myConfigName的值进行判断时,就会报错,找不到参数
原因:if标签的参数好像只能是method方法中传入的值,获取不到全局参数,自己的理解,可能不准确。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_43842093/article/details/121576521
内容来源于网络,如有侵权,请联系作者删除!