本文介绍了声明Bean的约束的四种类型,并分别举例,展示代码,简单说明四种Bean的约束。
一、声明Bean的约束
Bean Validation中的约束通过java注解被表达。在这部分中,你将学到如何强化一个对象模型通过这些注解。这有四种类型的bean约束:
- 成员变量约束。
- 属性约束。
- 容器元素约束。
- 类约束。
不是所有的约束都可以放在所有这些级别上。事实上,没有定义在Bean Validation中的默认的约束,可以放在类级别上。
这个“java.lang.annotation.Target”注解在约束注解中,它自身决定关于每个元素注解可以放的地方,后续的“自定义注解”会讲到。
1.1、成员变量级别的约束
约束可以通过注解一个类的成员变量来表达。例子:2.1“成员变量级别的约束”展示了一个成员变量级别的配置例子。
例2.1:成员变量约束
当使用成员变量级别的约束,也就是域访问策略的值需要被验证。这意味着这个验证引擎可以直接访问实例变量,即使存在一个访问器,也不会调用属性访问器方法。
约束可以被应用在任何访问类型(public,private,etc)的成员变量上,但是在static fields上的约束目前不支持。
当验证字节码强化对象的时候,属性级别的约束应该被使用ÿ