苞米豆-多数据源 2.3.2 发布:支持 spel 从参数获取数据源

栏目: 软件资讯 · 发布时间: 7年前

内容简介:首先感谢 @心跳 捐赠的200元大红包,又可以给娃买罐奶粉了。 https://gitee.com/baomidou/dynamic-datasource-spring-boot-starter dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据...

首先感谢 @心跳 捐赠的200元大红包,又可以给娃买罐奶粉了。

https://gitee.com/baomidou/dynamic-datasource-spring-boot-starter

dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。

其支持 Jdk 1.7+, SpringBoot 1.4.x 1.5.x 2.0.x。最新版为2.3.2

演示例子 可参考项目下的samples目录

2.3.x版本主要做了以下改动。

  • 重构创建数据源类。废弃DataSourceFactory,改为Bean的DynamicDataSourceCreator。

  • 自动适配mybatisPlus。 移除参数的mp-enabled。

  • 新特性支持spel参数获取数据源。(重要 重要 重要

  @DS("#session.tenantName")//从session获取
    public List selectSpelBySession() {
        return userMapper.selectUsers();
    }

    @DS("#header.tenantName")//从header获取
    public List selectSpelByHeader() {
        return userMapper.selectUsers();
    }

    @DS("#tenantName")//使用spel从参数获取
    public List selectSpelByKey(String tenantName) {
        return userMapper.selectUsers();
    }

    @DS("#user.tenantName")//使用spel从复杂参数获取
    public List selecSpelByTenant(User user) {
        return userMapper.selectUsers();
    }

如果你还想对spel解析的参数进行进一步处理,请注入DynamicDataSourceSpelResolver

默认的DefaultDynamicDataSourceSpelResolver 没有对解析到的参数进行处理直接返回。

有了spel的支持,真正算得上动态了。 比如根据租户来切换数据源,比如根据用户id来切换数据源。

如果有问题可直接提ISSUE.


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人人都是产品经理2.0

人人都是产品经理2.0

苏杰 / 电子工业出版社 / 2017-5 / 66.6

《人人都是产品经理2.0——写给泛产品经理》继续定位在-1~3 岁的产品经理。这里特别要强调,“-1 岁”指的是“泛产品经理”群体,比如自认为是“产品新人”的“职场老人”,需要自己做产品的早期创业者,对产品感兴趣并且工作中可能要承担部分职责的技术、设计、运营等人员,其他行业对互联网产品感兴趣的从业者等,《人人都是产品经理2.0——写给泛产品经理》可以说是为他们量身定做的。 内容方面,《人人都......一起来看看 《人人都是产品经理2.0》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器