SpringBoot引用properties,自动注入,属性相互引用,ResourceBundle

1.在SpringBoot项目自动注入properties文件中的属性

在resourc文件下创建config.properties,下面${project.base} 属性间相互引用

# 项目各个文件夹路径配置文件
# 项目的根目录
project.base=D:/
# 用户看到的数据路径
project.user_data=${project.base}/user_data
# 程序运行依赖的文件路径
project.system_data=${project.base}/user_data
# 头像文件路径
project.profile_file=${project.system_data}/profile
# bash文件
project.bash_file=${project.system_data}/bash_file
# 外部依赖的Jar包
project.jar_package=${project.system_data}/Jar
# dcm文件存储路径
project.dcm_image=${project.user_data}/dcm_image
# 标注等其余文件
project.other_file=${project.user_data}/other_file

创建config.java,@Component将Config对象注入到Spring容器中,@PropertySource("classpath:config.properties")表示将config.properties注入容器,@ConfigurationProperties(prefix = "project")config.properties前缀为project和类的变量一一对应

@Component
@PropertySource("classpath:config.properties")
@ConfigurationProperties(prefix = "project")
@Data
public class Config {
    private String base;
    private String user_data;
    private String system_data;
    private String profile_file;
    private String bash_file;
    private String jar_package;
    private String dcm_image;
    private String other_file;
}

在properties文件注入后,如果引用单个文件,可以用@{}

@Value("${project.base}")
利用ResourceBundle获取properties中属性
ResourceBundle bundle = ResourceBundle.getBundle("application");
#application.properties 省略后缀名
String filePath = bundle.getString("file.tempfile.path");
properties中文乱码

[外链图片转存失败(img-ZHeR6iNv-1563720288824)(https://raw.githubusercontent.com/weiyangtang/images/master/20190721224357.png)]

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值