Environment
注入外部的值
在Spring中,处理外部值的最简单方式就是声明属性源并通过Spring的Environment来检索属性。
在本例中,@PropertySource引用了类路劲中一个名为app.properties的文件。
这个属性文件会加载到Spring的Environment中,稍后可以从这里检索属性。
Environment
Environment提供了获取属性值的一些方法
Environment
String getProperty(String key)
String getProperty(String key,String defaultValue)
T getProperty(String key, Class type)
T getProperty(String key, Class type, T defaultValue)
String getRequiredProperty(String key)
查询的属性必须有定义,否则抛出将会抛出IllegalStateException异常。
boolean containsProperty(String key)
检查属性是否存在
Class getPropertyAsClass(String key, T.class)
String[] getActiveProfiles()
String[] getDefaultProfiles()
boolean acceptsProfiles(String... profiles)
如果environment支持给定profile的话,就返回true。
Environment还提供了几个与属性相关的方法,如果你在使用getProperty()方法的时候没有指定默认值,并且这个属性没有定义的话,获取到的值是null。如果你希望这个属性必须要定义,那么可以使用getRequiredProperty()方法。
如果使用getRequiredProperty()方法查询的属性没有定义的话,将会抛出IllegalStateException异常。
Last updated