2015-04-30 5 views
0

Я использую Spring Boot, и я хочу прочитать путь к файлу из файла resources/application.properties и установить его значение в String в Java-классе:Spring boot: Прочтите файл PATH из "application.properties"

ресурсы/application.properties

mypath=dir/file.ext 

ресурсов/приложений context.xml

<context:property-placeholder location="classpath:application.properties" /> 

MyJavaClass.java

@Component 
public class MyJavaClass{ 

    @Value("${mypath}") 
    String mypath; 

    public void printme(){ 
     System.err.println(mypath); 
    } 
} 

Когда я пытаюсь напечатать строку, она всегда печатает "нуль". Что я делаю не так? Благодарю.

ответ

-1

Наконец-то я решил проблему. Я пытался использовать аннотацию значения из «основного» потока (тот, который выполняет код из основной функции).

Если я получу значения из кода услуг, например, он отлично работает.

0

Является ли папка ресурса в пути класса? Если бы не попробовать, как этот

<bean id="propertyLoader" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
    <property name="locations"> 
      <value>classpath:application.properties</value> 
    </property> 
</bean> 

я предполагаю, как ваш файл свойств присутствует в том же месте, что и файл конфигурации, из которого он имеет в виду.

+0

Да, папка ресурсов находится в пути к классам. –

+0

попробуйте вышеуказанный .. –

Смежные вопросы