java - 在 Spring Boot 中从 application.yml 文件中读取数字
问题描述
步骤1:
我想在 Spring 上阅读配置文件几分钟,如下图所示:
我使用了这段代码:
Environment environment = context.getEnvironment();
log.info("output number:", environment.getProperty("shafagh.job.msg.cron"));
输出:
output number: 0 0/55 8-13
但这整行又回来了,我只想返回一个数字(0/55)
第2步:
将0/55转换为 time 或 int ?
解决方案
好的,对于第 1 步,只需解析字符串。有很多可能的方法,但我认为这个就足够了:
public static void main(String[] args) {
String cron = "0 0/55 8-13 ? * SAT,SUN,MON,TUE,WED";
String[] parts = cron.split("\\s");
System.out.println("Wanted part is: " + parts[1]); // "0/55"
}
对于第 2 步,您需要了解这个表达式的真正含义以及如何在 Java 中表示它。我个人不知道你从那部分真正需要什么(只是频率?偏移量?他们两个?)所以我无法回答那部分。您知道为什么要将其转换为字符串以外的其他类型吗?
推荐阅读
- javascript - 如何使用 React Native Navigation (v5) 向父页面发送数据?
- git - Git过滤选项卡到空间转换但不显示文件已修改
- python - python中的git命令,无法识别有效的git
- excel - 识别列中前一个单元格值仅在可见范围内不同的行号
- csv - .CSV 文件是否由 Spark 并行分解和处理
- ios - 添加子视图后UIButton无法点击
- javascript - 如何在js中访问id样式的属性
- r - 如何使用 dplyr 根据另一列中的值选择列?
- javascript - 当 Arduino 向 NW.js 发送空的 ArrayBuffer 时该怎么办?
- android - android.widget.Toolbar 不能强制转换为 androidx.appcompat.widget.Toolbar 即使不是这样