我有一个类,在其中Map应用程序文件中定义的属性。但是,如果定义了像enabled这样的环境变量,我想将两个字段设置为在其他环境变量中定义的默认值。我怎么能那样做。事先谢谢你的帮助。
这是我的课:
@ConfigurationProperties(prefix = "school.students")
@Data
public class SchoolStudents {
private List<Details> details;
@Data
public static class Details {
private String name;
private String class;
private String floor;
private int rollNo;|
}
}
这是我的申请表。yaml:
school:
student:
details:
- name: Aaraon
class: Sixth
floor: First
rollNo: 70
- name: Lisa
class: Third
floor: Second
rollNo: 102
所以在上面的例子中,如果环境变量enabled设置为true,我想从系统中已经存在的环境变量中提取class&floor。环境变量将是102层、102层、70层、70层。因此,对于lisa,需要填充102\u class和102\u floor variables值。
1条答案
按热度按时间vtwuwzda1#
你可以用
Environment
对于这种情况,可以在类中注入bean,该类将具有以下逻辑请注意,在粘贴问题时,我使用了env变量的文本值,如果您还想使用属性中的floor和class值,那么您可以在循环中连接它,而不是floor/class
逻辑功能只是给你一个想法,你可以用你的逻辑