【问题标题】:How to set @value property java如何设置@value属性java
【发布时间】:2020-09-07 14:27:43
【问题描述】:

我正在编写协议提供者测试来验证来自消费者的传入请求,并且我已经为此使用了自定义约束验证器

public class MaxRecipients implements
    ConstraintValidator<MaxRecipientsSize, Collection> {

  @Value("${recipient.max.size}")
  private Integer recipientMaxSize;


  @Override
  public void initialize(MaxRecipientsSize constraintAnnotation) {
  }

  @Override
  public boolean isValid(Collection value, ConstraintValidatorContext cvc) {
    if (isEmpty(value)) {
      return TRUE;
    }

到这里,当控制权到来时,receiverMaxSize 的值变为空,我已经在应用程序属性和属性源中配置了属性。 有人可以帮忙吗?

【问题讨论】:

标签: spring spring-boot pact


【解决方案1】:

我认为您的课程 MaxRecipients 缺少注释 @Component 或类似的。因此,@Value 不会通过 Spring 填充。

【讨论】:

  • 我也用过@component
  • 那么你的applications.properties / application.yml 没有正确加载。请添加您的完整代码(包括@Component)和您的 application.properties/yml
猜你喜欢
  • 2012-03-11
  • 1970-01-01
  • 2012-08-21
  • 1970-01-01
  • 1970-01-01
  • 2011-11-06
  • 1970-01-01
  • 1970-01-01
  • 2011-10-17
相关资源
最近更新 更多