【问题标题】:how to pass web.xml parameters to annotations (hibernate validator )?如何将 web.xml 参数传递给注释(休眠验证器)?
【发布时间】:2015-03-18 22:04:20
【问题描述】:

我想将 web.xml 上的上下文参数传递给 Java Bean 中的休眠注解,例如:

web.xml

<context-param>
 <param-name>limit</param-name>
 <param-value>5</param-value>
</context-param>

Java Bean

@Length(min=0, max=limit )
private String text;

这可能吗?

【问题讨论】:

    标签: jakarta-ee hibernate-validator


    【解决方案1】:

    简短的回答是这是不可能的。约束注解是静态的,不能动态改变。

    在最好的情况下,您可以尝试编写自定义约束。您仍然不能在约束中使用变量,但在ConstraintValidator 实现中,您可以通过注入或ThreadLocal 访问一些动态状态。当然,现在不可能再通过查看域模型来推迟确切的约束。

    如果您需要根据模型在哪个应用程序中使用来更改约束,我想我更愿意使用 Bean Validation 的 XML 配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多