Spring配置單數據源

git源碼地址:https://gitee.com/Gggoblin/geektime-spring.gitjava

目錄結構:(SpringBoot項目啓動時會默認執行data.sql和schema.sql)git

application.properties 可寫可不寫,效果同樣:web

management.endpoints.web.exposure.include=*
spring.output.ansi.enabled=ALWAYS

spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.username=sa
spring.datasource.password=
spring.datasource.hikari.maximumPoolSize=5
spring.datasource.hikari.minimumIdle=5
spring.datasource.hikari.idleTimeout=600000
spring.datasource.hikari.connectionTimeout=30000
spring.datasource.hikari.maxLifetime=1800000

DatasourceDemoApplication:spring

 

data.sql:sql

INSERT INTO FOO (ID, BAR) VALUES (1, 'aaa');
INSERT INTO FOO (ID, BAR) VALUES (2, 'bbb');

schema.sql:數據庫

CREATE TABLE FOO (ID INT IDENTITY, BAR VARCHAR(64));

 運行效果以下圖app

第一行是datasource的信息:HikariDataSource是SpringBoot的默認數據庫鏈接池(號稱java平臺最快)url

第二行是數據庫連接的信息:url以及用戶名等blog

剩下兩行就是數據查詢結果的數據源碼

 

git中 還有一份利用原生的Spring實現的單數據源的代碼,這裏就不放出來了

對比以後發現SpringBoot作的事情有:

DataSourceAutoConfiguration  • 配置 DataSourceDataSourceTransactionManagerAutoConfiguration  • 配置 DataSourceTransactionManagerJdbcTemplateAutoConfiguration  • 配置 JdbcTemplate符合條件時才進行配置:就是說SpringBoot會在沒有手動聲明的時候自動配置bean,若是咱們手動聲明瞭某個bean,那麼SpringBoot就不會進行配置。

相關文章
相關標籤/搜索