在Java 开发中,需要将一些易变的配置参数放置在 properties 配置文件中。下边使用@PropertySource注解来获取文件中的信息并转换为map
br/>下边使用@PropertySource注解来获取文件中的信息并转换为map
代码:
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import java.util.HashMap;
import java.util.Map;
@Configuration
@PropertySource(value = {"classpath:yushiEven.properties"},encoding = "UTF-8",ignoreResourceNotFound = true)
@ConfigurationProperties(prefix = "yushi.event.map")@Data
br/>@Data
private Map<Integer,String> camera = new HashMap<>();
}
properties 文件信息内容
yushi.event.map.camera.1=高温告警
yushi.event.map.camera.2=低温告警
yushi.event.map.camera.3=温度告警恢复
yushi.event.map.camera.4=风扇故障告警
yushi.event.map.camera.5=风扇故障告警恢复
yushi.event.map.camera.6=Flash 操作告警
yushi.event.map.camera.7=CPU 利用率过高告警
yushi.event.map.camera.8=内存利用率过高告警
yushi.event.map.camera.9=设备重启
yushi.event.map.camera.10=设备配置变更
运行结果:
注解属性解释:
@PropertySource
- name:字符串,表示这次属性配置的名称,一般情况下,不需要填写
- value:对应的配置文件路径的数组(注意路径不要写错)
- ignoreResourceNotFound:如果找不到配置文件,是否忽略。默认为false,如果是true表示如果找不到对应的配置文件则直接忽略;如果是false,找不到对应的配置文件会直接抛出异常
- encoding:编码格式