【发布时间】:2011-05-17 15:36:55
【问题描述】:
我有一个使用 Maven 的 Spring 项目,并且有几个配置文件允许它在具有资源过滤的不同设置上运行。有些设置有 JNDI,有些没有。对于那些不需要 JDBC 数据源的。
根据我的设置,处理此问题的最佳方法是什么?我想避免对多个文件和 ant-run 或类似的东西做任何事情。这给我留下了:
- 设置两个 bean 并过滤我的资源以包含一个或另一个。
- 有什么我没想到的?
这是第一个项目符号的示例:
<bean id="jdbcDataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close"
p:driverClassName="${jdbc.driver}"
p:url="${jdbc.url}"
p:username="${jdbc.username}"
p:password="${jdbc.password}"/>
<bean id="jndiDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"
p:jndiName="${jndi.name}" />
<bean id="someBean" class="com.whatever.SomeBeanImpl"
p:dataSource-ref="${dataSource}"/>
我很想知道人们实现此目的的其他方式以及他们采用该解决方案的原因。或者他们是否采用了这个解决方案以及为什么。
【问题讨论】: