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

Java后端参数校验:JSR303实战学习指南 本文还有配套的精品资源,点击获取 简介:本学习资料深入探讨Java后端开发中重要的服务端参数验证环节,使用JSR303标准进行对象级别约束校验。文档涉及Markdown格式的详细说明,配合示例代码和图解,旨在帮助开发者理解和实践使用JSR303进行数据验证的技术要点。包括对JSR303规范的介绍、验证注解的应用、自定义验证逻辑,以及与Spring框架结合的实践案例。 ... 阅读详情

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)使用,可在数据绑定或提交时自动完成校验。

LAMMPS-使用MATLAB计算径向分布函数 首先需要使用LAMMPS进行分子动力学模拟,并获取到所需的数据文件,LAMMPS是一款开源的分子动力学模拟软件,可以模拟原子、分子和离子的运动行为,对于本文的目标假设你已经完成了LAMMPS的安装和模拟过程,获得了数据文件。)是一种重要的统计工具,用于描述原子或分子之间的空间分布情况,通过计算RDF可以获得物质的结构信息、相互作用距离以及相位转变等重要参数,本文将介绍如何使用MATLAB计算LAMMPS生成的数据文件的径向分布函数。变量替换为你的实际数据文件的名称。 阅读详情

相关推荐

手把手教你搞定JBI投稿:从Statement of Significance到Declaration Statement的保姆级避坑指南

本文提供了一份详细的JBI投稿指南,重点解析Statement of Significance和Declaration of Interests的撰写技巧,帮助研究者避开常见格式陷阱。通过实战案例和检查清单,确保投稿符合JBI的学术严谨性和临床转化价值要求,提升稿件通过率。

weixin_29278805的博客 603

JSR-303常用注解-参数校验

JSR-303参数校验

weixin_50887774的博客 902

ESP32 STA AP模式下,设备连接 ESP的AP 后无法上网,无法访问域名上网(或者Failed to enable NAPT)

ESP32 STA AP模式下,设备连接 ESP的AP 后无法上网,无法访问域名上网(或者Failed to enable NAPT)1.可能是ESP STA模式未成功连接到路由器,确保 STA 成功连接到外部网络。2.检查 STA 和 AP 的网络配置是否正确,避免子网冲突。3.ESP32的NAPT功能未正确启用,确保 menuconfig 中已启用 IP_NAPT。4.DNS服务器未正确配置。

qq_34885669的博客 1531

JSR 303校验常用注解

注解 功能 @Null 对象必须为null @NotNull 对象必须不为null,无法检查长度为0的字符串 @NotBlank 字符串必须不为Null,且去掉前后空格长度必须大于0 @AssertTrue 对象必须为true @AssertFalse 对象必须为false @Max(Value) 必须为数字,且小于或等于Value @Min(Value) ...

__Forward 1883

从零开始:用RFSOC XCZU47DR搭建软件无线电开发环境(2023最新版)

本文详细介绍了如何使用Xilinx RFSoC XCZU47DR搭建高性能软件无线电(SDR)开发环境,涵盖硬件选型、开发环境配置、射频子系统校准及实战应用开发。特别针对2023年最新技术需求,提供从基础配置到高级优化的完整指南,助力科研人员和工程师快速掌握RFSoC开发技术。

weixin_42525005的博客 502

windows10下 iperf3测试带宽

客户端输入:"iperf3.exe -u -c 服务器IP地址 -b 5g" //客户端给服务器发送udp数据包,最大带宽为5g。客户端输入:“iperf3.exe -c 服务器IP地址 -P 10“//表示客户端10路并行给服务器发送TCP包;上图可知:带宽是15Gbps(这里不知道为什么下面测试的UDP会比这里TCP慢 按道理UDP不可能比TCP慢的5.)3. 验证是否下载成功,在打开的窗口中输入“iperf3.exe -v”,会出现安装的版本,表示安装成功了。5. iperf3参数。

xiaoqixiaoguai的博客 5881

JSR303统一校验和分组校验及常用注解@NotBlank@NotEmpty 的使用

JSR303-bean校验规范

闰土的博客 2638

皮肤病识别 - 使用DenseNet或EfficientNet模型在ISIC数据集上进行皮肤病识别任务

在本篇博客中,我们探讨了如何使用 DenseNet 和 EfficientNet 模型在 ISIC 数据集上进行皮肤病识别任务。我们加载了数据集,并进行了预处理。然后我们使用 Keras 构建了两个不同的模型,并训练和评估了它们。最后,我们使用训练好的模型对新的皮肤病图像进行了预测。

斌擎科技 1299

jsr303常用注解

JSR303 简介 JSR是Java Specification Requests的缩写,意思是Java 规范提案。是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。任何人都可以提交JSR,以向Java平台增添新的API和服务。JSR已成为Java界的一个重要标准。 JSR-303 是JAVA EE 6 中的一项子规范,叫做Bean Validation,Hibernate Validator 是 Bean Validation 的参考实现 . Hiberna

Lazy_G的博客 1063

STM32CubeMX之DAC产成正弦波

“在之前的文章中曾经介绍过用TIM产生PWM做DAC用,STM32定时器输出PWM做DAC。部分型号的STM32单片机内部有专用的DAC,本篇文章将介绍如何用内部DAC+DMA产生正弦波...

zhang062061的专栏 1508

Python爬虫实战:利用最新技术爬取抖音话题挑战视频

本文将详细介绍如何使用Python最新技术栈构建一个高效的抖音话题挑战视频爬虫。我们将从环境配置开始,逐步讲解请求模拟、数据解析、反反爬策略、数据存储等关键环节,并提供完整的代码实现。本文适合有一定Python基础的开发者学习高级网络爬虫技术。关键词:Python爬虫、抖音API、话题挑战、视频爬取、反反爬本文详细介绍了如何使用Python最新技术栈构建抖音话题挑战视频爬虫。我们从基础请求开始,逐步实现了数据解析、反反爬策略、数据存储等核心功能,并探讨了分布式和增量爬取等高级主题。更智能的反反爬策略。

2201_76125261的博客 1742

注解实现校验接口传参是否超出取值范围

Target(ElementType . FIELD) @Constraint(validatedBy = ListValue . ValidIfInRange . class) //借助@Constraint注解实现自定义校验逻辑,validatedBy属性是数组类型,可同时定义多种校验逻辑 @Retention(RetentionPolicy . RUNTIME) @Documented public @interface ListValue {

llg___的博客 1039

k230+CanMV+micropython环境下byte、int、hex、string之间的转换常用函数实测

【代码】k230+CanMV+micropython环境下byte、int、hex、string之间的转换常用函数实测。

weixin_47446386的博客 114

JSR 303校验 解析及使用

JSR 303 基本的校验规则 1.首先通过IDEA找到类 2.随便点开一个,这些注解类大致配置一样 来个栗子: ( @Pattern 验证 String 对象是否符合正则表达式的规则) /* * Jakarta Bean Validation API * * License: Apache License, Version 2.0 * See the license.txt fi...

changaspl 933

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

【全网最全】JSR303参数校验与全局异常处理(从理论到实践别用if判断参数了)

一、前言 我们在日常开发中,避不开的就是参数校验,有人说前端不是会在表单中进行校验的吗?在后端中,我们可以直接不管前端怎么样判断过滤,我们后端都需要进行再次判断,为了安全。因为前端很容易拜托,当测试使用PostMan来测试,如果后端没有校验,不就乱了吗?肯定会有很多异常的。今天小编和大家一起学习一下JSR303专门用于参数校验的,算是一个工具吧! 二、JSR303简介 JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate...

HongYu012的博客 7773

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

帮你少写一大半参数校验代码的小技巧

介绍 几乎每个web网站都会对用户提交的参数进行校验,前端要做,后端也要做。防止用户直接通过接口调用的方式来请求或保存数据,从而导致产生脏数据等其他严重的后果。因为有些校...

HollisChuang's Blog 869

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

@notnull group如何使用_请不要在Java开发中再使用判断进行参数校验了

请不要在Java开发中再使用判断进行参数校验了原创 码农小胖哥 2020-08-07 14:04:141. 前言因为网络传输的不可靠性,以及前端数据控制的可篡改性,后端的参数校验是必须的,应用程序必须通过某种手段来确保输入进来的数据从语义上来讲是正确的。2. 数据校验的痛点为了保证数据语义的正确,我们需要进行大量的判断来处理验证逻辑。而且项目的分层也会造成一些重复的校验,产生大量与业务无关的代码。...

weixin_35977449的博客 2031

JSR 303 注解及使用方法

JSR 303 基本的校验规则 @Null 验证对象是否为null @NotNull 验证对象是否不为null, 无法查检长度为0的字符串 @NotBlank 检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格. @NotEmpty 检查约束元素是否为NULL或者是EMPTY. Booelan检查 @AssertTrue 验证 Boolean 对...

Lycode 4711

java jsr 303_java对象校验(validation)-JSR303规范

JSR303 规范简介web开发有一句名言:永远不要相信用户输入,在任何时候,当你要处理一个应用程序的业务逻辑,数据校验是你必须要考虑和面对的事情。应用程序必须通过某种手段来确保输入进来的数据从语义上来讲是正确的。在通常的情况下,应用程序是分层的,不同的层由不同的开发人员来完成。很多时候同样的数据验证逻辑会出现在不同的层,这样就会导致代码冗余和一些管理的问题,比如说语义的一致性等。为了避免这样的情...

weixin_31319027的博客 1088

JSR303校验(1)

入门JSR303参数校验

h13245的博客 454

java后端数据验证之JSR303

一文学会使用java后端校验规范——JSR-303

m0_63837020的博客 885

JSR303校验前端传递的数据

JSR303校验前端传递的数据

lixianhe的博客 2万+

全局异常处理+JSR303验证

我们在日常开发中,避不开的就是参数校验,有人说前端不是会在表单中进行校验的吗?在后端中,我们可以直接不管前端怎么样判断过滤,我们后端都需要进行再次判断,为了安全。因为前端很容易拜托,当测试使用PostMan来测试,如果后端没有校验,不就乱了吗?肯定会有很多异常的。今天小编和大家一起学习一下JSR303专门用于参数校验的,算是一个工具吧!JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator。

weixin_42383680的博客 360

springboot整合JSR303参数校验与全局异常处理

我们在日常开发中,避不开的就是参数校验,有人说前端不是会在表单中进行校验的吗?在后端中,我们可以直接不管前端怎么样判断过滤,我们后端都需要进行再次判断,为了安全。因为前端很容易拜托,当测试使用PostMan来测试,如果后端没有校验,不就乱了吗?肯定会有很多异常的。今天小编和大家一起学习一下JSR303专门用于参数校验的,算是一个工具吧!JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator。

老男孩的架构路 412

【全网最全】springboot整合JSR303参数校验与全局异常处理

我们在日常开发中,避不开的就是参数校验,有人说前端不是会在表单中进行校验的吗?在后端中,我们可以直接不管前端怎么样判断过滤,我们后端都需要进行再次判断,为了安全。因为前端很容易拜托,当测试使用PostMan来测试,如果后端没有校验,不就乱了吗?肯定会有很多异常的。今天小编和大家一起学习一下JSR303专门用于参数校验的,算是一个工具吧!JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator。

m0_73311735的博客 161

JSR303——数据校验&统一响应数据格式

1.JSR303简介 适用于服务器端的数据校验 Java为Bean数据合法性校验所提供的标准框架 Spring MVC支持JSR 303标准的校验框架 JSR 303通过在Bean属性上标注校验注解指定校验规则 Spring本身没有提供JSR 303的实现,他是由Hibernate Validator 实现与spring整合的 2.JSR303相关常用的注解 @Null(message) :被注释的元素必须为null @NotNull(message :被注释的元素必须不为null @...

一路向北 560
上一篇: 在jave后端中用WebMvcConfigurer或用corsWebFilter处理跨域的示例代码
下一篇: 压力测试-使用JMeter在windows下地址被占用的bug解决方法
surfing097279
博客等级 码龄4年 14粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

surfing097279

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

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

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

打赏作者

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

抵扣说明:

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

余额充值