`
yuanhaibo
  • 浏览: 1928 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Validator JSR303 学习笔记一 [约束类型]

阅读更多

Bean Validation约束的三种不同的注解(annotations) 类型

1.字段级(field level) 约束,放在字段

   @NotNull

    private String manufacturer;

2.属性级别约束,放在get方法上 ,不可以放在set方法


   @NotNull

    public String getManufacturer() {

        return manufacturer;

    }

   一个属性,最好不要字段级和属性级别约束同时存在
3.类级别约束 放在class 方上
   @PassengerCount

   public class Car

   以下情况下可以用到类级别约

   1) 同时校验多个属性来验证一个对象

   2) 一个属性在验证的时候需要另外的属性的信息的时候



约束继承


   如果要验证的对象继承于某个父类或者实现了某个接口,那么定义在父类或者接口中的约束会在验证这个对象的时候被自动加载,如同这些约束定义在这个对象所在的类中一


对象图



Bean Validation API不仅能够用来校验单个的实例对象,还能够用来校验完整的对象图.要使用这个功能,只需要在一个有关联关系的字段或者属性上标注@Valid

. 这样,如果一个对象被校验,那么它的所有的标注了@Valid
的关联对象都会被校验

public class Car {


    @NotNull
    @Valid
    private Person driver;


分享到:
评论

相关推荐

    hibernate validator jsr303

    Hibernate Validator 是一个强大的Java Bean验证框架,它实现了JSR 303(JavaBeans Validation 1.0)和JSR 349(JavaBeans Validation 1.1)规范,为开发者提供了丰富的数据验证功能。这些规范旨在标准化Java应用...

    Bean Validator JSR303

    - **约束注解(Constraint Annotations)**:JSR 303 提供了一系列预定义的注解,如`@NotNull`、`@Min`、`@Max`、`@Size`等,用于在类或字段上声明验证规则。开发者也可以自定义约束注解。 - **验证器(Validator)...

    创建自定义JSR303的验证约束(Creating custom constraints)

    在Java世界中,JSR303(也称为Bean Validation)是一个用于验证对象属性的规范,它提供了一种标准化的方式来验证业务对象。JSR303不仅提供了预定义的验证注解,如`@NotNull`, `@Min`, `@Max`等,还允许开发者创建...

    JSR303依赖的jar包

    JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator。JSR 303 用于对 Java Bean 中的字段的值进行验证。 Spring MVC 3.x 之中也大力支持 JSR-303,可以在控制器中对...

    JSR303jar包

    1. `hibernate-validator-5.0.0.CR2.jar`:这是Hibernate Validator的实现,它是JSR303/JSR349(Java Bean Validation 1.1)的一个流行实现。Hibernate Validator提供了丰富的校验规则和自定义校验器,可以方便地...

    JSR303jar包 使用的是Hibernate

    在Java世界中,JSR303的实现之一是由Hibernate提供的Hibernate Validator。 Hibernate Validator是Hibernate项目的一个子项目,它实现了JSR303和后续的JSR349(Java Bean Validation 1.1)标准。这个jar包为开发者...

    JSR303Test.zip

    JSR 303,全称为Java Specification Request 303,是Java平台上的一个标准,用于进行数据验证。这个标准被纳入了JSR 349,即Bean Validation 1.0,随后在Bean Validation 1.1(JSR 380)中得到了进一步的增强和发展...

    jsr 303需要的jar包

    JSR 303的实现之一是Hibernate Validator,它是目前最广泛使用的实现库。 在提供的描述中提到了几个关键的JAR包,这些是JSR 303验证机制的重要组成部分: 1. **jboss-logging-3.1.0.CR2**:这是一个日志框架,主要...

    JSR303 jar包 文档

    JSR 303的核心库是`validation-api-1.1.0.jar`,它定义了验证API,而`hibernate-validator-4.3.0.jar`是JSR 303的一个实现,由Hibernate团队提供。 **JSR 303核心概念** 1. **验证注解**:JSR 303提供了多种内置的...

    JSR303.zip

    JSR303,全称为Java Specification Request 303,是Java Community Process(JCP)提出的一个关于数据校验的标准。这个标准定义了如何在Java应用中进行bean验证,提供了一种统一的方式来验证对象的属性,以确保数据...

    JSR303需要用到的3个jar包

    在实际开发中,通常会将这些jar包加入到项目的类路径中,然后在Bean对象的属性上使用JSR 303提供的注解进行约束声明,通过`Validator`接口进行验证操作。例如: ```java public class User { @NotNull private ...

    23 Spring Core参数校验之JSR303_JSR-349注解-慕课专栏1

    Spring Core提供了一种优雅的方式来处理参数校验,特别是通过JSR 303、JSR 349和JSR 380这些标准注解,实现了高效且易于维护的验证机制。 JSR 303最初定义了JavaBean验证的标准,而JSR 349是其修订版,主要增加了对...

    springmvc_jsr303

    项目中所需的jar包在压缩包中已提供,项目中用到了JSR303和hibernate-validator的技术,大量采用了注解@NotNull,@Email,@Length,@Max,@Pattern,@Size等,此外还采用了自定义注解,验证信息全部配置在属性文件中.

    SpringMVC杂记(五) JSR303数据验证

    为了实现JSR303验证,我们需要在项目中引入相关的依赖,比如Hibernate Validator,它是JSR303的一个实现。在 Maven 或 Gradle 的配置文件中添加对应的依赖项,确保在运行时可以使用这些验证注解。 在控制器中,我们...

    JSR303校验Hibernate Validator实现需要用到的jar包

    JSR303校验Hibernate Validator实现需要用到的jar包。hibernate-validator-5.4.1.Final.jar + jboss-logging-3.1.3.GA.jar + validation-api-1.1.0.Final.jar+classmate-1.3.3.jar + hibernate-validator-cdi-5.4.1....

    hibernate-validator-4.3.1.Final.jar jsr 303

    hibernate-validator-4.3.1.Final.jar jsr 303

    JSR303+AOP数据校验

    【JSR303+AOP数据校验】是Java Web开发中的一种常见实践,用于确保应用程序接收到的数据质量。JSR303(Java Bean Validation)是Java平台上的一个规范,它定义了一种标准的方式来验证对象属性,以满足业务规则。AOP...

    jsr303.jar

    如果你使用的是Maven或者Gradle,可以通过配置依赖管理来引入相关的库,比如Hibernate Validator,它是JSR303的一个实现。在项目中,你还需要包含其他依赖,比如 javax.validation-api.jar,它包含了JSR303的核心...

    服务端JSR303参数校验md,学习代码

    JSR303(Java Bean Validation)是Java平台的一个标准,用于进行对象级别的约束验证。下面我们将深入探讨这一主题。 【描述】"服务端JSR303参数校验md"表明这是一个关于如何使用JSR303进行参数验证的学习资料,可能...

Global site tag (gtag.js) - Google Analytics