gpt4 book ai didi

java - 如何强制通过@Value 注释进行属性注入(inject)?

转载 作者:搜寻专家 更新时间:2023-11-01 02:42:16 27 4
gpt4 key购买 nike

我使用 @ConfigurationProperties 注释从属性文件填充了以下 Test.java POJO 类。我已经看到使用 @Required 注释使其成为必需的。

不是在 setter 方法级别定义注释,而是在 @Value 注释中是否有任何注释或选项可用于定义 Mandatory、NotNull 等条件?

@Component
@ConfigurationProperties(prefix = "com.test")
public class Test {
private String name;

@Required
public void setName(String name) {
name = name;
}

public String getName(String name) {
name = name;
}
}

这是强制特定属性的唯一正确方法吗?我可以将哪些其他此类注释用于此类条件或验证目的?

最佳答案

您可以对属性使用验证,只是不是以您设想的方式。您可以做的是在字段(或 setter )本身上使用标准验证注释(如 @NotNull 等)。

例如

@NotNull
@Size(min=2, max=10)
private String name;

查看 this部分文档

文档基本上说的是,您只需在类路径上有一个兼容的 JSR303 validator 实现,并使用相关的注释。Spring Boot 会处理剩下的事情

关于java - 如何强制通过@Value 注释进行属性注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30865475/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com