本篇分享的是springboot多資料來源配置,在從springboot v1.5版本公升級到v2.0.3時,發現之前寫的多資料來源的方式不可用了,捕獲錯誤資訊如:
異常:jdbcurl is required with driverclassname.先來說下之前的多資料來源配置如:
1配置了兩個資料庫,在原來預設的datasource節點下面增加了seconddatasource節點的配置,然後主要的**如:spring:
2datasource:
3 url: jdbc:sqlserver://
192.168.122.111;databasename=flight
4username: sa
5 password: 1234
.abcd
6 driver-class-name: com.microsoft.sqlserver.jdbc.sqlserverdriver
7seconddatasource:
8 url: jdbc:sqlserver://
192.168.122.111;databasename=flight2
9username: sa
10 password: 1234
.abcd
11 driver-class-name: com.microsoft.sqlserver.jdbc.sqlserverdriver
1@primary
2@bean
3 @configurationproperties(prefix = "
spring.seconddatasource")
4public
datasource datasource()
78 @bean(name = "
secoddatasource")
9 @configurationproperties(prefix = "
spring.seconddatasource")
10public
datasource secoddatasource()
1314
@primary
15@bean
16public
jdbctemplate jdbctemplate(datasource datasource)
1920 @bean(name = "
secondjdbctemplate")
21public jdbctemplate secondjdbctemplate(@qualifier(value = "
secoddatasource
") datasource datasource)
driverclassname.
很顯然配置節點不能使用導致的,配置節點名字變了,要解決這問題這裡使用了託管datasourceproperties的方式來對資料配置從新賦值,具體**如:
1能夠看出多了一級datasourceproperties的建立,此時能夠執行出結果如:@bean
2@primary
3 @configurationproperties(prefix = "
spring.datasource")
4public
datasourceproperties datasourceproperties()
78 @bean("
secondproperties")
9 @configurationproperties(prefix = "
spring.seconddatasource")
10public
datasourceproperties secondproperties()
1314
@primary
15@bean
16public
datasource datasource(datasourceproperties datasourceproperties)
1920 @bean(name = "
secoddatasource")
21public datasource secoddatasource(@qualifier(value = "
secondproperties
") datasourceproperties datasourceproperties)
除了編碼的這種方式也可以採用上面說的既然是配置找不到,那配置肯定是改名了,根據錯誤提示我們不放把url改名未jdbc-url,具體如下:
此刻我們再來執行,同樣的也能出來資料;兩種方式處理v2.03版本資料來源問題:
通過資料來源配置節點名變動的問題,引發了springboot在公升級迭代的過程中一些細微的變動,這或許會給我們在學習和公升級過程中造成麻煩,所以官網每次公升級的內容說明還是有必要看下的。
個人發展 2 0
現在是到處都在喊 2.0 的口號,剝去繁華的外表,很多還是值得我們去思考。有幸參加了csdn主辦的sd 2.0大會,每個主題都想聽聽,可嘆分身乏術。聽著聽著也會陷入自己的思考,如此百家爭鳴,百花齊放 才會是自己的方向呢?仔細看一遍所有的講師 除去個別年輕有為的後生外,多半是些老傢伙,我這次特地挑了平...
定時傳送20
獲取郵件標題。param packinglistnum pl.no 箱單號 return string 郵件標題。private string getmailsubject string packinglistnum 獲取郵件正文。param packinglistnum pl.no 箱單號 ret...
(20)狀態模式
定義 當 個物件內在狀態改變時允許其改變行為,這個物件看起來像改變了其類。型別 行為型模式 類圖 狀態模式結構 state 抽象狀態角色,介面或抽象類,負責物件狀態定義,並且封裝環境角色以實現狀態切換。concretestate 具體狀態角色,每乙個具體狀態必須完成兩個職責 本狀態的行為管理以及趨向...