最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot項(xiàng)目實(shí)現(xiàn)多數(shù)據(jù)源配置使用dynamic-datasource-spring-boot-starter的操作步驟

 更新時(shí)間:2023年06月10日 14:52:08   作者:無聊大俠hello?world  
這篇文章主要介紹了springboot項(xiàng)目實(shí)現(xiàn)多數(shù)據(jù)源配置使用dynamic-datasource-spring-boot-starter,本文分步驟結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下

要在Spring Boot項(xiàng)目中使用 dynamic-datasource-spring-boot-starter 實(shí)現(xiàn)多數(shù)據(jù)源配置,可以按照以下步驟進(jìn)行操作:

1.添加依賴:

在項(xiàng)目的 pom.xml 文件中添加 dynamic-datasource-spring-boot-starter 依賴:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
    <version>2.5.4</version>
</dependency>

2.配置數(shù)據(jù)源:

在項(xiàng)目的配置文件(application.propertiesapplication.yml)中配置多個(gè)數(shù)據(jù)源,例如:

dynamic:
  datasource:
    names: primary, secondary
    primary:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/db1?useSSL=false&serverTimezone=UTC
      username: root
      password: password1
    secondary:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/db2?useSSL=false&serverTimezone=UTC
      username: root
      password: password2

3.配置數(shù)據(jù)源切換策略:
創(chuàng)建一個(gè)配置類,用于配置數(shù)據(jù)源切換策略。例如,可以使用 RoundRobinRoutingDataSourceLoadBalanceDataSource 進(jìn)行數(shù)據(jù)源的輪詢切換或負(fù)載均衡切換。示例代碼如下:

@Configuration
public class DataSourceConfig 
{
    @Autowired
    private DataSourceProperties dataSourceProperties;
    @Bean
    @ConfigurationProperties(prefix = "dynamic.datasource")
    public DataSource dataSource() 
    {
        return DataSourceBuilder.create().build();
    }
    @Bean
    @Primary
    public DataSourceProvider dataSourceProvider()
    {
        DataSourceProperties.DataSourceType defaultDataSourceType = dataSourceProperties.getType();
        Map<String, DataSource> dataSources = new HashMap<>();
        dataSources.put("primary", dataSourceProperties.getPrimary());
        dataSources.put("secondary", dataSourceProperties.getSecondary());
        DynamicDataSourceProvider dynamicDataSourceProvider = new DynamicDataSourceProvider();
        dynamicDataSourceProvider.setDefaultDataSourceType(defaultDataSourceType);
        dynamicDataSourceProvider.setDataSources(dataSources);
        return dynamicDataSourceProvider;
    }
    @Bean
    public DynamicDataSource dynamicDataSource(DataSourceProvider dataSourceProvider)
    {
        DynamicDataSource dynamicDataSource = new DynamicDataSource();
        dynamicDataSource.setDataSourceProvider(dataSourceProvider);
        return dynamicDataSource;
    }
    @Bean
    public DataSourceTransactionManager transactionManager(DynamicDataSource dynamicDataSource)
    {
        return new DataSourceTransactionManager(dynamicDataSource);
    }
    @Bean
    public SqlSessionFactory sqlSessionFactory(DynamicDataSource dynamicDataSource) throws Exception 
    {
        SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
        sessionFactoryBean.setDataSource(dynamicDataSource);
        return sessionFactoryBean.getObject();
    }
}

4.使用數(shù)據(jù)源:

在需要使用不同數(shù)據(jù)源的地方,可以使用 @DS 注解指定要使用的數(shù)據(jù)源,例如:

@Service
public class UserService 
{
    @Autowired
    private UserMapper userMapper;
    @DS("primary")
    public User getPrimaryUserById(Long id) 
    {
        return userMapper.selectById(id);
    }
    @DS("secondary")
    public User getSecondaryUserById(Long id)
    {
        return userMapper.selectById(id);
    }
}

以上是使用 dynamic-datasource-spring-boot-starter 實(shí)現(xiàn)多數(shù)據(jù)源配置的基本步驟和示例代碼。通過這樣的配置,可以輕松地在Spring Boot項(xiàng)目中使用多個(gè)數(shù)據(jù)源進(jìn)行數(shù)據(jù)庫操作。

到此這篇關(guān)于springboot項(xiàng)目實(shí)現(xiàn)多數(shù)據(jù)源配置使用dynamic-datasource-spring-boot-starter的文章就介紹到這了,更多相關(guān)springboot使用dynamic-datasource-spring-boot-starter內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java8時(shí)間轉(zhuǎn)換(LocalDateTime)代碼實(shí)例

    Java8時(shí)間轉(zhuǎn)換(LocalDateTime)代碼實(shí)例

    這篇文章主要介紹了java8時(shí)間轉(zhuǎn)換(LocalDateTime)代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • java 靜態(tài)代理 動(dòng)態(tài)代理深入學(xué)習(xí)

    java 靜態(tài)代理 動(dòng)態(tài)代理深入學(xué)習(xí)

    代理模式是常用的java設(shè)計(jì)模式,特征是代理類與委托類有同樣的接口,代理類主要負(fù)責(zé)為委托類預(yù)處理消息、過濾消息、把消息轉(zhuǎn)發(fā)給委托類,以及事后處理消息等,需要的朋友可以參考下
    2012-11-11
  • MyBatis根據(jù)條件批量修改字段的方式

    MyBatis根據(jù)條件批量修改字段的方式

    這篇文章主要介紹了MyBatis根據(jù)條件批量修改字段的方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 詳解Java的Struts框架中棧值和OGNL的使用

    詳解Java的Struts框架中棧值和OGNL的使用

    這篇文章主要介紹了Java的Struts框架中棧值和OGNL的使用,Struts框架是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-11-11
  • java實(shí)現(xiàn)手機(jī)短信驗(yàn)證的基本思路

    java實(shí)現(xiàn)手機(jī)短信驗(yàn)證的基本思路

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)手機(jī)短信驗(yàn)證的基本思路,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • JPA?@ManyToMany?報(bào)錯(cuò)StackOverflowError的解決

    JPA?@ManyToMany?報(bào)錯(cuò)StackOverflowError的解決

    這篇文章主要介紹了JPA?@ManyToMany?報(bào)錯(cuò)StackOverflowError的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • java得到某年某周的第一天實(shí)現(xiàn)思路及代碼

    java得到某年某周的第一天實(shí)現(xiàn)思路及代碼

    某年某周的第一天,此功能如何使用java編程得到呢?既然有了問題就有解決方法,感興趣的朋友可以了解下本文,或許會(huì)給你帶來意想不到的收獲哦
    2013-01-01
  • Java之idea @NotNull @Nullable 注解使用

    Java之idea @NotNull @Nullable 注解使用

    這篇文章主要介紹了Java之idea @NotNull @Nullable 注解使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • 詳解spring security四種實(shí)現(xiàn)方式

    詳解spring security四種實(shí)現(xiàn)方式

    這篇文章主要介紹了詳解spring security四種實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 最長(zhǎng)重復(fù)子數(shù)組 findLength示例詳解

    最長(zhǎng)重復(fù)子數(shù)組 findLength示例詳解

    今天給大家分享一道比較常問的算法面試題,最長(zhǎng)重復(fù)子數(shù)組 findLength,文中給大家分享解題思路,結(jié)合示例代碼介紹的非常詳細(xì),需要的朋友參考下吧
    2023-08-08

最新評(píng)論

东乡县| 盐津县| 连江县| 克什克腾旗| 六安市| 治县。| 晴隆县| 永德县| 宝坻区| 玉山县| 永城市| 从化市| 万宁市| 绿春县| 灵武市| 迁西县| 林甸县| 彭泽县| 南安市| 新昌县| 普陀区| 绥中县| 满洲里市| 托克托县| 祁门县| 虎林市| 乐业县| 阳山县| 灌南县| 教育| 易门县| 梁平县| 濉溪县| 资阳市| 遂平县| 廊坊市| 杂多县| 沾化县| 宁城县| 安顺市| 吴忠市|