2013-11-11 4 views
0

У меня есть XML-файл beans, который загружает несколько файлов свойств для создания его компонентов. Все эти файлы свойства находятся в корневой папке как корень/а/abc.properties, корень/хуг/some.properties и т.д ..

<bean id="x"..... 
.... 
<util:properties id="properties" location="${config.base.dir}/abc/abc.properties" /> 
...... 
</bean> 


<bean id="y"..... 
.... 
<util:properties id="properties" location="${config.base.dir}/xyz/some.properties" /> 
...... 
</bean> 

Я хочу, чтобы переопределить поставить значение config.base.dir где-то в сверху, чтобы я мог менять местоположение корня, если это возможно, если определить какое-то свойство сверху?

+0

вы можете просто положить abc.properties в/ресурсах/папке/теста а. это время тестирования или время развертывания? –

+0

для тестов – kuhajeyan

ответ

1

Если вы используете Maven, вы можете иметь версию abc.properties в папке test/resources/abc /. это будет найдено по пути classpath перед файлом main/resources/abc/abc.properties.

Помогает ли это?

Почему вы хотите «изменить местоположение корня»?


системных свойства переопределяют ...

<!-- Configuration property files --> 
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="systemPropertiesModeName"> 
     <value>SYSTEM_PROPERTIES_MODE_OVERRIDE</value> 
    </property> 
    <property name="locations"> 
     <list> 
      <value>classpath*:config.properties</value> 
     </list> 
    </property> 
</bean> 
+0

Thanks Jeff. но это не решит мою проблему. в проектах есть несколько банок зависимости. в свою очередь, эти зависимости также используют файлы свойств. И они также используют свойства из этого корня для их соответствующих. если я хочу протестировать определенный модуль, мне нужно пойти и изменить их каждый путь. – kuhajeyan

+1

Вы можете посмотреть, как использовать свойства системы в качестве переопределений, а затем изменить их перед каждым запуском теста. –

+0

Отлично. Thats помогает, спасибо много jeff! – kuhajeyan