Spring MVC:根据输入设置 属性 值

Spring MVC: Set property value based on input

我有一个登录页面,我必须在其中 select 它应该连接哪个数据库

我的配置是这样的:

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

我使用 Spring JDBC 模板 我可以这样写吗

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

我不介意有初始值,即 DATABASE_1

看来 AbstractRoutingDataSource 对您来说是一个可行的解决方案。它作为多个数据源之间的中介层,并决定动态使用哪个数据源。

以下博客解决方案描述了如何根据用户上下文的某些属性进行切换

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