2015-03-31 40 views
0

我有一個登錄頁面,在這裏我必須選擇哪個數據庫設置屬性值,它應該連接 enter image description hereSpring MVC的:根據輸入

我有我的配置是這樣的:

\t <bean id="dataSource" 
 
\t \t class="org.apache.commons.dbcp.BasicDataSource"> 
 
\t \t <property name="driverClassName" value="com.ibm.db2.jcc.DB2Driver" /> 
 
\t \t <property name="url" value="jdbc:db2://my_server:10000/DATABASE_1" /> 
 
\t \t <property name="username" value="galadm" /> 
 
\t \t <property name="password" value="galadm" /> 
 
\t </bean>

我使用Spring JDBC模板 我可以寫這樣的東西嗎

<property name="url" value="jdbc:db2://my_server:50000/DATABASE{database_which_I_get_from_input}" />

我不介意有初始值即DATABASE_1

回答

1

似乎AbstractRoutingDataSource對你是一個可行的解決方案。它作爲多個數據源之間的媒介,並決定動態使用哪一個層。

下面的博客解決方案介紹瞭如何根據用戶的上下文

https://spring.io/blog/2007/01/23/dynamic-datasource-routing/

+0

+1的一些屬性切換。棒極了,我在砸我的頭2天。非常感謝!還有一個問題。它看起來像AbstractRoutingDataSource已被棄用。有沒有其他方法? – SKumar 2015-03-31 23:41:05

+0

當你已經在棧中使用彈簧時,這是最標準的方法。當然,還有其他方法,您可以查找[multitenancy](http://blog.trixi.cz/2012/01/multitenancy-using-spring-and-postgresql/)或提供您自己的自定義impl。但是,afaik,AbstractRoutingDataSource已經存在了很長時間,但是,它並沒有被棄用 – 2015-04-01 05:12:33

+0

我很抱歉,我輸入了錯誤。它已被棄用的SimpleJdbcDaoSupport。 – SKumar 2015-04-01 13:41:32