日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot配置多数据源

發布時間:2023/12/31 javascript 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot配置多数据源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

application.properties文件

server.port=8053spring.datasource.primary.jdbc-url=jdbc:mysql://xxxxxxx:3306/xxxxxxx spring.datasource.primary.username=xxxxxxx spring.datasource.primary.password=xxxxxxx spring.datasource.primary.driver-class-name= com.mysql.cj.jdbc.Driverspring.datasource.secondary.jdbc-url=jdbc:mysql://xxxxxxx:3306/xxxxxxx spring.datasource.secondary.username=xxxxxxx spring.datasource.secondary.password=xxxxxxx spring.datasource.secondary.driver-class-name= com.mysql.cj.jdbc.Driver# Hikari will use the above plus the following to setup connection pooling spring.datasource.type=com.zaxxer.hikari.HikariDataSource #最小空閑連接,默認值10,小于0或大于maximum-pool-size,都會重置為maximum-pool-size spring.datasource.hikari.minimum-idle=5 #最大連接數,小于等于0會被重置為默認值10;大于零小于1會被重置為minimum-idle的值 spring.datasource.hikari.maximum-pool-size=15 #自動提交從池中返回的連接,默認值為true spring.datasource.hikari.auto-commit=true #空閑連接超時時間,默認值600000(10分鐘),大于等于max-lifetime且max-lifetime>0,會被重置為0;不等于0且小于10秒,會被重置為10秒。 #只有空閑連接數大于最大連接數且空閑時間超過該值,才會被釋放 spring.datasource.hikari.idle-timeout=30000 #連接池名稱,默認HikariPool-1 spring.datasource.hikari.pool-name=Hikari #連接最大存活時間.不等于0且小于30秒,會被重置為默認值30分鐘.設置應該比mysql設置的超時時間短;單位ms spring.datasource.hikari.max-lifetime=55000 #連接超時時間:毫秒,小于250毫秒,會被重置為默認值30秒 spring.datasource.hikari.connection-timeout=30000 #連接測試查詢 spring.datasource.hikari.connection-test-query=SELECT 1

pom文件

<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency>

DataSourceConfig文件

import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.jdbc.core.JdbcTemplate;import javax.sql.DataSource;/*** @author qushen* @date 2021/6/14 15:03*/ @Configuration public class DataSourceConfig {@Bean(name = "primaryDataSource")@Qualifier("primaryDataSource")@ConfigurationProperties(prefix="spring.datasource.primary")public DataSource primaryDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "secondaryDataSource")@Qualifier("secondaryDataSource")@Primary@ConfigurationProperties(prefix="spring.datasource.secondary")public DataSource secondaryDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "primaryJdbcTemplate")public JdbcTemplate primaryJdbcTemplate(@Qualifier("primaryDataSource") DataSource dataSource) {return new JdbcTemplate(dataSource);}@Bean(name = "secondaryJdbcTemplate")public JdbcTemplate secondaryJdbcTemplate(@Qualifier("secondaryDataSource") DataSource dataSource) {return new JdbcTemplate(dataSource);}}

jdbcserviceImlp文件

@Service @Log4j2 public class jdbcserviceImlp implements jdbcservice {@Autowired@Qualifier("primaryJdbcTemplate")protected JdbcTemplate jdbcTemplate1;@Autowired@Qualifier("secondaryJdbcTemplate")protected JdbcTemplate jdbcTemplate2;@Overridepublic String selectMysqlVersion() {String sql="SELECT * from table limit 1 ";List<Map<String, Object>> primary=jdbcTemplate1.queryForList(sql);log.info(primary);List<Map<String, Object>> secondary=jdbcTemplate2.queryForList(sql);log.info(secondary);return "成功";} }

jdbcservice文件

public interface jdbcservice {String selectMysqlVersion(); }

jdbcController文件

import com.sws.jdbcduo.service.jdbcservice; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;/*** @author qushen* @date 2021/6/14 15:19*/ @Slf4j @Controller @RequestMapping("/api") public class jdbcController {@Resourceprivate jdbcservice jdbcService;@RequestMapping("/jdbc")@ResponseBodypublic void jdbc(){String Response=jdbcService.selectMysqlVersion();log.info(Response);}}

?

?

?

總結

以上是生活随笔為你收集整理的Spring Boot配置多数据源的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。