mybatis-plus 全局属性(自定义数据源)

注意!!!
全局属性中不能设置非String类型。原因在文末

1,配置文件添加配置(自定义配置项)

mybatis:
  global-properties:
    testKey1: 'true'
    testKey2: 'false'
    testKey1: "'test'"

2,解析配置项

@Configuration
public class MybatisGlobalPropertiesConfig {

    @ConfigurationProperties(prefix = "mybatis.global-properties")
    @Bean("mybatisGlobalProperties")
    public Properties globalProperties() {
        return new Properties();
    }

}

3,数据源配置类引入属性


    @javax.annotation.Resource(name = "mybatisGlobalProperties")
    public Properties mybatisGlobalProperties;

4,新建 Configuration

 // 新建configuration
 MybatisConfiguration configuration = new MybatisConfiguration();
 configuration.setVariables(mybatisGlobalProperties);

5,在创建 SqlSessionFactory 的时候把属性设置进去

MybatisSqlSessionFactoryBean sqlSessionFactoryBean = new MybatisSqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(datasource);
sqlSessionFactoryBean.setConfiguration(configuration);

6, 示例:
最后打印sql : select * from test where 0 = 0 and 1 = 1 and ‘test’ = ‘test’。
因为 testKey2的值是 false所以不执行 and 2 = 2

<select id="test">
        select * from test
        where
              0 = 0
        <if test="${testKey1}">
            and 1 = 1
        </if>
        <if test="${testKey2}">
            and 2 = 2
        </if>
        <if test="${testKey3} == 'test'">
            and ${testKey3} = 'test'
        </if>
    </select>

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

因为这里使用了getProperties 函数, 当value非String类型的时候,则返回null
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值