iii
序言 ............................................................................. v
1. 开始入门 ..................................................................... 1
1.1. 第一个Maven项目 ........................................................ 2
1.2. 添加约束 .............................................................. 2
1.3. 校验约束 .............................................................. 3
1.4. 更进一步 .............................................................. 5
2. Validation step by step ...................................................... 7
2.1. 定义约束 .............................................................. 7
2.1.1. 字段级(field level) 约束 ........................................ 7
2.1.2. 属性级别约束 .................................................... 8
2.1.3. 类级别约束 ...................................................... 9
2.1.4. 约束继承 ....................................................... 10
2.1.5. 对象图 ......................................................... 11
2.2. 校验约束 .............................................................. 13
2.2.1. 获取一个Validator的实例 ........................................ 13
2.2.2. Validator中的方法 .............................................. 13
2.2.3. ConstraintViolation 中的方法 ................................... 14
2.2.4. 验证失败提示信息解析 ........................................... 15
2.3. 校验组 ............................................................... 16
2.3.1. 校验组序列 ..................................................... 19
2.3.2. 对一个类重定义其默认校验组 ..................................... 20
2.4. 内置的约束条件 ........................................................ 22
2.4.1. Bean Validation constraints .................................... 22
2.4.2. Additional constraints ......................................... 25
3. 创建自己的约束规则 .......................................................... 29
3.1. 创建一个简单的约束条件 ................................................ 29
3.1.1. 约束标注 ....................................................... 29
3.1.2. 约束校验器 ..................................................... 31
3.1.3. 校验错误信息 ................................................... 34
3.1.4. 应用约束条件 ................................................... 34
3.2. 约束条件组合 .......................................................... 36
4. XML configuration ........................................................... 39
4.1. validation.xml ........................................................ 39
4.2. 映射约束 .............................................................. 40
5. Bootstrapping ............................................................... 45
5.1. Configuration 和 ValidatorFactory ..................................... 45
5.2. ValidationProviderResolver ............................................ 46
5.3. MessageInterpolator ................................................... 47
5.3.1. ResourceBundleLocator .......................................... 47
5.4. TraversableResolver ................................................... 48
5.5. ConstraintValidatorFactory ............................................ 49
6. Metadata API ................................................................ 51
6.1. BeanDescriptor ........................................................ 51
6.2. PropertyDescriptor .................................................... 51