Obtenez la valeur du fichier de propriétés de manière dynamique à l'aide d'Environnement.
spring boot 2.0.3.RELEASE
application.properties
sample.name=hoge
sample.age=20
Injectez l'environnement et appelez la méthode getProperty.
SampleProperty.java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.core.env.Environment;
@Configuration
// @Spécifiez l'emplacement du fichier de propriétés avec PropertySource
@PropertySource("classpath:/application.properties")
public class SampleProperty {
//Environnement d'injection
@Autowired
private Environment env;
public String get(String key) {
//Obtenir la valeur de la propriété de l'environnement
return env.getProperty("sample." + key);
}
}
Obtenez la valeur de la classe Configuration en utilisant le chemin inclus dans l'URL comme clé.
SampleController.java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
@Component
@RestController
public class SampleController {
@Autowired
private SampleProperty prop;
@GetMapping(path = "/user/{key}", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public String getUser(@PathVariable String key) {
String result = prop.get(key);
if (result == null) {
result = "La valeur n'a pas pu être obtenue.";
}
return result;
}
}
Accédez à http: // localhost: 8080 / user / name depuis votre navigateur
Accédez à http: // localhost: 8080 / user / age depuis votre navigateur
Recommended Posts