2017-02-01 5 views
0

Ich versuche, eine benutzerdefinierte Eigenschaft aus application.properties (in src/main/resources) meiner Spring Boot Rest-Anwendung zugreifen und versuchen, diesen Wert von meinem Controller zugreifenLesen von Eigenschaften aus Application.properties in Spring Boot REST-Anwendung

Frühling Boot-Anwendung Toplage "src/main/java/com/myapp/FileReaderApp.java"

package com.myapp; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 

@SpringBootApplication 
public class FileReaderApp { 

public static void main(String[] args) { 
    SpringApplication.run(FileReaderApp.class, args); 
    } 
} 

Controller-Klasse Standort: „src/main/java/com/myapp/controller/FileReaderController. Java "

@RestController 
@RequestMapping("/counter-api") 
public class FileReadController { 

    @Value("${fileLocation}") 
    static private String fileLocation; 
    //do other actions 
    } 

Ich fand heraus, ich könnte es überhaupt nicht tun und jedes Mal, wenn FileLocation als null kommt.

Meine Datei application.properties hat nur eine Eigenschaft, fileLocation.

Könnte jemand bitte beraten, wo ich in diesem Fall falsch liege und was ist der beste Weg, um auf einen Anwendungseigenschaftswert in der REST-Controller-Klasse zuzugreifen?

+0

möglich duplicate von http://stackoverflow.com/questions/7253694/spring-how-to-inject-a-value-to-static-field – iamiddy

+0

@iamiddy der Link Sie zur Verfügung gestellt ist ähnlich, aber half nicht bei der Lösung meiner Problem. Haben Sie eine andere Option? – dbas

+0

dachte Ihr Problem wird durch eine statische Variable verursacht? – iamiddy

Antwort

1

Sie injizieren in ein static Feld. Dies wird nicht unterstützt.

Verwandte Themen