Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 参数化Springbean文件中的导入资源_Java_Spring_Datasource_Propertyconfigurator - Fatal编程技术网

Java 参数化Springbean文件中的导入资源

Java 参数化Springbean文件中的导入资源,java,spring,datasource,propertyconfigurator,Java,Spring,Datasource,Propertyconfigurator,我有一个datasource.xml,如下所示。我有两个用于mySql和Oracle的sql bean文件,因为有些查询依赖于数据库,mySql中的limit相当于Oracle中的rownum。我从Oracle文件夹或mySql文件夹导入资源文件。现在,我必须在构建之前修改import语句。是否有其他选择,如在属性文件中包含数据库名称。至少对于Spring 3.0.5,PropertyConfigure不适用于import语句 <import resource="classpath:ora

我有一个datasource.xml,如下所示。我有两个用于mySql和Oracle的sql bean文件,因为有些查询依赖于数据库,mySql中的limit相当于Oracle中的rownum。我从Oracle文件夹或mySql文件夹导入资源文件。现在,我必须在构建之前修改import语句。是否有其他选择,如在属性文件中包含数据库名称。至少对于Spring 3.0.5,PropertyConfigure不适用于import语句

<import resource="classpath:oracle/SqlBeans.xml" />

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" >
        <value>${ds-jndi}</value>
    </property> 
    <property name="lookupOnStartup" value="false" />
    <property name="cache" value="true" />
    <property name="proxyInterface" value="javax.sql.DataSource" />
</bean>

 <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
  <property name="dataSource" ref="dataSource" />
 </bean>

@RC提到的Spring配置文件是个好主意,但我认为需要3.1版本

这可能更简单:

<context:property-placeholder location="classpath:db-${my.env}.properties"/>
并在java命令行上设置my.env


请参阅。

以Spring配置文件为例,但它是Spring 3.1