java开发中JSR303常用的校验注解

JSR303(Bean Validation)提供了一系列常用的校验注解,用于对JavaBean的属性进行数据校验,以下是最常用的一些:

 

- @Null:被注解的元素必须为null。

- @NotNull:被注解的元素不能为null(适用于任何对象,不能用于基本类型)。

- @NotBlank:被注解的字符串不能为null,且去除首尾空格后长度大于0(仅用于字符串)。

- @NotEmpty:被注解的元素不能为null或空(字符串长度不为0,集合/数组大小不为0)。

- @AssertTrue:被注解的元素必须为true(适用于boolean或Boolean)。

- @AssertFalse:被注解的元素必须为false(适用于boolean或Boolean)。

- @Min(value):被注解的数字(包括整数、浮点数等)必须大于等于value。

- @Max(value):被注解的数字必须小于等于value。

- @DecimalMin(value):被注解的数字必须大于等于value(支持 BigDecimal 等高精度类型)。

- @DecimalMax(value):被注解的数字必须小于等于value(支持 BigDecimal 等高精度类型)。

- @Positive:被注解的数字必须为正数(大于0)。

- @PositiveOrZero:被注解的数字必须为正数或0。

- @Negative:被注解的数字必须为负数(小于0)。

- @NegativeOrZero:被注解的数字必须为负数或0。

- @Size(min, max):被注解的元素(字符串、集合、数组等)的长度必须在min到max之间(包含边界)。

- @Length(min, max):被注解的字符串长度必须在min到max之间(Hibernate Validator扩展注解)。

- @Email:被注解的字符串必须是合法的邮箱格式(允许为空,若需非空需配合@NotNull)。

- @Pattern(regexp):被注解的字符串必须匹配指定的正则表达式。

- @Past:被注解的日期/时间必须是过去的时间(包括当前时间,适用于Date、LocalDateTime等)。

- @PastOrPresent:被注解的日期/时间必须是过去或当前的时间。

- @Future:被注解的日期/时间必须是未来的时间。

- @FutureOrPresent:被注解的日期/时间必须是未来或当前的时间。

 

这些注解通常添加在JavaBean的属性上,结合校验框架(如Hibernate Validator)使用,可在数据绑定或提交时自动完成校验。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

surfing097279

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值