例在application.yml中添加:
upload:
# 是否压缩图片
is_compress: true
# 图片默认缩放比率
DEFAULT_SCALE: 0.5d
# 测试
test: hh
如何获取upload中的值呢?
一:在普通的的java类中获取
@Value("${upload.test}")
private String test;
测试:
@GetMapping("/test")
@ResponseBody
public String test() {
return test;
}
其他同理。。在 @Value 中 upload.属性即可
二:建一个实体类,加上如下两个注解,即可读取配置文件
is_compress,DEFAULT_SCALE两个举例
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "upload")
public class uploadConfig {
public boolean is_compress;
public double DEFAULT_SCALE;
public double getDEFAULT_SCALE() {
return DEFAULT_SCALE;
}
public void setDEFAULT_SCALE(double DEFAULT_SCALE) {
this.DEFAULT_SCALE = DEFAULT_SCALE;
}
public boolean isIs_compress() {
return is_compress;
}
public void setIs_compress(boolean is_compress) {
this.is_compress = is_compress;
}
}
调用:利用 @Autowired 注入后调用即可
@Autowired
private uploadConfig conn;
@GetMapping("/DEFAULT_SCALE")
@ResponseBody
public double DEFAULT_SCALE() {
return conn.DEFAULT_SCALE;
}
三:工具类中读取
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
/**
* @ClassName 工具类直接读取配置文件内容 静态转换
* @Author ckx
* @Date 2020/4/9 13:53
**/
@Component
public class JWTUtil {
public boolean is_compress;
public double DEFAULT_SCALE;
@Autowired
private uploadConfig uploadConfig;
/**
* 静态方法想使要使用一个非静态对象,需要做一个初始化【重要】
*/
@PostConstruct
public void init() {
is_compress = uploadConfig.isIs_compress();
DEFAULT_SCALE = uploadConfig.getDEFAULT_SCALE();
}
}
使用时直接 “JWTUtil.属性” 即可
参考:
https://blog.csdn.net/weixin_36775115/article/details/79539811