Spring MVC 参数校验 总结

1. 简介

Sping MVC提供了参数校验的方便注解。

2.代码

在pom.xml中添加依赖:

<dependency><groupId>org.hibernate.validator</groupId><artifactId>hibernate-validator</artifactId><version>8.0.0.Final</version>
</dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator-annotation-processor</artifactId><version>8.0.0.Final</version>
</dependency>

在实体类中添加注解:

@Data
public class Product {@NotBlank//非空private String name;@Length(min = 6)//最小长度为6private String id;@NotBlank//非空private String category; @Past//必须是过去的时间@JsonbDateFormat("yyyy-MM-dd HH:mm:ss")private Date inDate;
}

在业务中使用:

//必须标注@Validated代表校验,BindingResult捕捉校验错误紧挨着被校验数据
public Object register(@Validated @RequestBody Product product, BindingResult result){if(result.hasErrors()){//捕获校验错误Map data = new HashMap();data.put("code",401);data.put("msg","参数校验异常");return data;}...
}

3.常用校验注解

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/431568.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何提升亚马逊与速卖通的关键词搜索排名?

在电商平台上&#xff0c;一个不可忽视的事实是&#xff0c;大部分消费者&#xff08;超过80%&#xff09;在搜索产品时&#xff0c;主要集中在搜索结果的前两页。如果你的产品未能跻身这些显眼的位置&#xff0c;很可能就会错失大量的潜在客户。因此&#xff0c;提升关键词搜索…

PG duckdb插件 pg_quack部署与使用

一.pg_quack简介 pg_quack 是一个创新的 PostgreSQL扩展&#xff0c;它将 DuckDB-—一个嵌入式列式数据库 管理系统集成到PostgreSQL中。这个开源项目为开发者提供了一种在同一个数据 库环境中利用高性能数据处理和存储的新方式,使得在PostgreSQL在OLAP的性能 上得到了很大的提…

Docker容器常用命令详解

Docker容器常用命令&#xff0c;我们经常使用&#xff0c;又经常忘记&#xff0c;今天我们系统分析一下&#xff1a; 1、查看运行的进程 #列出所有运行的容器 sudo docker ps#列出所有容器&#xff0c;包括运行和停止的 docker ps -a #列出所有容器&#xff0c;并过滤 docker…

【Docker】解决Docker Engine stopped

解决Docker Engine stopped 解决Docker Engine stopped1.检查虚拟设置2 安装wslwindows安装wsl 解决Docker Engine stopped 在安装完docker之后不少用户会遇到Docker Engine stopped。下面就下给出解决方法让docker正常运行起来 1.检查虚拟设置 打开任务管理器查看cpu页面&a…

行业展望:线缆行业发展

线缆行业作为国民经济中最大的配套行业之一&#xff0c;在我国机械工业的细分行业中占据举足轻重的地位&#xff0c;仅次于汽车整车制造和零部件及配件制造业。作为电气化、信息化、智能化社会中重要的基础性配套产业&#xff0c;电线电缆被誉为国民经济的"血管"与&q…

【Python】遇见的问题:为项目选择的 Python 解释器无效

一、问题说明 导入项目文件后&#xff0c;提示“为项目选择的 Python 解释器无效” 二、问题原因 暂时不知道 三、解决办法 第一步&#xff1a;添加本地解释器 第二步&#xff1a;点击确定 位置&#xff1a;当前项目所在目录 基础解释器&#xff1a;python.exe所在目录 第三…

SpringBoot的应用

目录 一、springboot的应用 1、创建springboot项目 2、乱码问题配置 3、springboot日志配置 4、springboot整合mybatis 二、配置文件讲解及测试 1、全局配置文件参数读取 1.1 全局配置文件的位置 1.2 配置文件的读取 1.2.1 导包 1.2.2 编写配置对象Bean 1.2.3 编写配置文件 1.2…

创建单链表

一、完成单链表操作&#xff0c;要求节点构造类型。 1、建立学生结构体&#xff08;学号&#xff0c;姓名&#xff0c;成绩&#xff09; 2、循环调用头插法创建整表 3、遍历单链表 4、任意位置插入一个完整的学生信息 5、任意位置删除一个学生。 6、单链表逆置 7、单链表按照学…

[通信原理]确知信号1:傅里叶分析 × 确知信号

傅里叶分析 对于周期函数可以用直流分量、正弦函数和余弦函数构成的无穷级数来表示&#xff0c;这些函数是正交的&#xff0c;意味着它们之间没有任何相关性。‌ 必须指出&#xff0c;并非任意周期信号都能进行傅里叶级数展开&#xff0c;函数需满足狄利赫里条件才能被展开。…

RAG的文档拆分策略

目录 Langchain支持的文档拆分 智谱AI采用的文档拆分策略 Meta KDD Cup24 Qanything 总结 Langchain支持的文档拆分 名字具体教程分割字符是否添加metadata描述递归式RecursiveCharacterTextSplitter、RecursiveJsonSplitter用户自定义的字符递归拆分文本。这种拆分是试图…

使用 UWA Gears 测试小游戏性能

UWA Gears 是UWA最新发布的无SDK性能分析工具。针对移动平台&#xff0c;提供了实时监测和截帧分析功能&#xff0c;帮助您精准定位性能热点&#xff0c;提升应用的整体表现。 随着小游戏的规模和用户量持续增长&#xff0c;玩家对于小游戏的性能要求也越来越高。为了能够给玩…

【大数据】元数据是解锁数据价值的关键

在信息爆炸的数字时代&#xff0c;数据无处不在&#xff0c;它以多种形式存在&#xff0c;从文本文档到数字图片&#xff0c;从交易记录到科学测量。然而&#xff0c;如果没有合适的数据管理和理解&#xff0c;这些数据的价值就会大打折扣。如何提高数据价值呢&#xff1f;这就…

力扣 简单 206.反转链表

文章目录 题目介绍题解 题目介绍 题解 法一&#xff1a;双指针 在遍历链表时&#xff0c;将当前节点的 next 改为指向前一个节点。由于节点没有引用其前一个节点&#xff0c;因此必须事先存储其前一个节点。在更改引用之前&#xff0c;还需要存储后一个节点。最后返回新的头引…

C# CS1612 尝试修改集合中值类型的情况

在C#中&#xff0c;发现尝试直接修改集合中值类型的中的值发生报错 提示“它不是变量”&#xff0c;通过官方索引的链接可知&#xff0c;尝试修改某一值类型&#xff0c;但是该值类型作为中间表达式的结果生成但不存储在变量中&#xff0c;会发生报错。 正确做法是将其赋值给局…

【软考】传输层协议TCP与UDP

目录 1. TCP1.1 说明1.2 三次握手 2. UDP3. 例题3.1 例题1 1. TCP 1.1 说明 1.TCP(Transmission Control Protocol&#xff0c;传输控制协议)是整个 TCP/IP 协议族中最重要的协议之一。2.它在IP提供的不可靠数据服务的基础上为应用程序提供了一个可靠的、面向连接的、全双工的…

芝法酱学习笔记(0.3)——SpringBoot下使用mybatis做增删改查和报表

零、前言 书接上回&#xff0c;我们搭建了windows下的开发环境&#xff0c;并给出了一个hello world级别的多模块SpringBoot项目。 毕竟java后端开发&#xff0c;离不开数据库的操作&#xff0c;为方便后面内容的讲解&#xff0c;这里再做一期铺垫&#xff0c;core模块下新增一…

安卓13去掉下拉菜单的Dump SysUI 堆的选项 android13删除Dump SysUI 堆

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析3.1 位置13.2 位置24.代码修改5.编译6.彩蛋1.前言 客户需要去掉下拉菜单里面的Dump SysUI 堆图标,不让使用这个功能。 2.问题分析 android的下拉菜单在systemui里面,这里我们只需要定位到对应的添加代…

跟王道学c记录

scanf int a; scanf("%d",&a); 一定要有取地址符 printf 用%f精度修饰符指定想要的小数位数。例如,%5.2f会至少显示5位数字并带有2位小 数的浮点数 用%s精度修饰符简单地表示一个最大的长度,以补充句点前的最小字段长度 printf 数的所有输出都是右对齐的,除非…

Jetpack02-LiveData 数据驱动UI更新(类似EventBus)

前提 LiveData使用了Lifecycle的生命周期&#xff0c;阅读本文前&#xff0c;请先了解Lifecycle源码。 简介 LiveData本质是数据类型&#xff0c;当改变数据的时候&#xff0c;会通知观察者&#xff0c;且只在界面可见的时候才会通知观察者。只能在主线程注册观察者&#xf…

WebRTC编译后替换libwebrtc.aar时提示找不到libjingle_peerconnection_so.so库

Loading native library: jingle_peerconnection_so 问题原因&#xff1a;编译的时候只编译了armeabi-v7a的版本&#xff0c;但是应用程序是arm64-v8a&#xff0c;所以无法运行 解决方法&#xff1a;更新编译脚本&#xff0c;加上arm64-v8a进行编译 ./tools_webrtc/android/bu…