一、DataSource已關閉的處理
在大量使用數據源時,有時會出現數據源使用後未關閉的情況,這個問題使用Spring Boot可以很容易解決。Spring Boot中的DataSource是由Tomcat中的Commons DataSource構建的。
我們可以使用初始化屬性等設置,通過指定destroyMethod來定義關閉應用程序上下文時的關閉行為。
@Bean(destroyMethod = "close") public DataSource dataSource(){ return new DataSource(); }
二、如何創建DataSource
1、使用DruidDataSource
DruidDataSource是Alibaba提供的一個開源的資料庫連接池,相比於其他連接池,它有更多的監控特性,更好的性能。
@Configuration public class DruidConfig { @Bean @ConfigurationProperties(prefix = "spring.datasource.druid") public DataSource druidDataSource() { return new DruidDataSource(); } }
2、使用自定義的DataSource
Spring Boot不僅支持常規的數據源(如MySQL,PostgreSQL等),還可以自定義我們自己的數據源。只需要實現DataSource介面即可。
public class MyDataSource implements DataSource { // 實現介面中的所有方法 // ... }
三、DataSourceProperties的選取
1、url
指定連接到哪個資料庫。參數格式如下:
jdbc:mysql://localhost:3306/local_db
2、username和password
指定連接到資料庫需要用到的用戶名和密碼。
spring.datasource.username = root spring.datasource.password = admin
3、driver-class-name
指定連接資料庫對應的驅動類。Spring Boot會自動根據指定的資料庫URL猜測所需的驅動器類,因此可以放心省略這個參數。
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
4、其他選項
其他的一些選項還包括:initial-size,測試連接,以及連接超時等等。這些選項可以根據自己的實際需求進行設置。
spring.datasource.initial-size = 5 spring.datasource.max-active = 50 ...
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/152177.html