java - 如何在 Spring Boot 的构造函数中读取 application.properties 值?
问题描述
我知道构造函数在自动连接变量之前调用。但是,不幸的是,我想读取构造函数中的 application.properties 值?
@Component
public class DESedeEncryption {
private static final String key = "TEST_KEY";
public DESedeEncryption() {
system.out.println(key);
}
}
DESedeEncryption encrypted = new DESedeEncryption();
对于上面的类,对象是在我的项目中使用 new 运算符创建的,共有 108 个位置。现在,我想从 application.properties 中读取该键值。但是,我需要使用 @Autowired 注释更改所有 108 个位置。但是,在实体类文件中使用“new”运算符编写的对象创建的一些地方。所以,我不能在实体类中自动连接对象。
有人,请帮我解决这个问题。
解决方案
您可以使用 @Value 注释在构造函数中声明一个变量,您可以在其中调用 application.properties 变量。
示例类:
public DESedeEncryption(@Value("${key}") final String key) {
system.out.println(key);
}
推荐阅读
- json - Clikhouse + Amazon SNS 通知
- google-apps-script - 用于非规范化 json 数据工作不正常的 Google Apps 脚本功能
- sql - 使用 FUNCTION -SQL Server 查询查找员工的当前职位
- php - Shopware : 通过 ID 获取文件编号
- arrays - 如何在 MATLab 中创建增量为 0.01 的样本直方图?
- prometheus - 使用 grafana 持续时间变量重新采样普罗米修斯数据
- javascript - How can I change the collisionFilter of an object so it can no longer interact with MouseConstraint (MatterJS)
- php - Stripe API PHP,获取所有付款方式(我每次都需要客户 ID 吗?)
- python - 更改熊猫数据框格式
- dataframe - 从数据块中的大型 pyspark 数据帧或 koalas 数据帧返回一行的最快方法是什么?