首页 > 其他分享 >待整理

待整理

时间:2024-08-07 17:54:52浏览次数:11  
标签:NotEmpty List list 整理 注解 size constraints

修饰 list参数 使用 @NotEmpty 还是 @Size好,达到 list.size > 0的目的

在Java中,特别是使用Spring框架进行Web开发时,我们常常需要对方法参数进行校验。对于List类型的参数,如果你想要确保这个列表不为空(即list.size() > 0),那么@NotEmpty是一个更直接且语义明确的选择。

@NotEmpty注解来自javax.validation.constraintsorg.hibernate.validator.constraints包,它确保被注解的集合、Map、数组或字符串不为null且不为空。对于List来说,这意味着它至少包含一个元素。

相比之下,@Size注解用于确保集合、Map、数组或字符串的大小在指定的范围内。虽然你也可以使用@Size(min = 1)来达到list.size() > 0的目的,但@NotEmpty在语义上更直接表达了“不为空”的意图。

因此,推荐在这种情况下使用@NotEmpty注解。以下是使用@NotEmpty注解的示例:

import javax.validation.constraints.NotEmpty;
import java.util.List;

public class MyService {

    public void processList(@NotEmpty List<String> list) {
        // 处理不为空的列表
    }
}

在这个例子中,如果传递给processList方法的list参数为空或null,那么验证将失败,并抛出一个ConstraintViolationException异常。

标签:NotEmpty,List,list,整理,注解,size,constraints
From: https://www.cnblogs.com/del88/p/18347565

相关文章

  • 【python海龟画图】代码整理
    春联点击查看代码importturtlet=turtlet.showturtle()t.penup()t.goto(-150,150)t.pendown()t.color('black','red')t.begin_fill()foriinrange(2):t.forward(50)t.right(90)t.forward(400)t.right(90)t.end_fill()t......
  • 2024大模型秋招LLM相关面试题整理
    0一些基础术语大模型:一般指1亿以上参数的模型,但是这个标准一直在升级,目前万亿参数以上的模型也有了。大语言模型(LargeLanguageModel,LLM)是针对语言的大模型。175B、60B、540B等:这些一般指参数的个数,B是Billion/十亿的意思,175B是1750亿参数,这是ChatGPT大约的参数规模。强......
  • JVM超详细知识点整理(只读这一篇就够了哦)
    (一)JVM开篇为什么要学习他JVM是什么JVM由哪些部分组成,运行流程是什么学习什么(二)什么是程序计数器程序计数器:线程私有的,内部保存的字节码的行号.用于记录正在执行的字节码指令的地址程序计数器总结(三)Java堆Java堆总结(四)什么是虚拟机栈什么是虚......
  • Linux 系统问题分析常用命令整理
    lsof在许多Linux或者类Unix系统里都有lsof命令,它常用于以列表的形式显示所有打开的文件和进程。打开的文件包括磁盘文件、网络套接字、管道、设备和进程。使用这条命令的主要情形之一就是在无法挂载磁盘和显示正在使用或者打开某个文件的错误信息的时候。常用的参数列表:l......
  • 15:Python数据类型的综合对比整理
    #Python有六个标准的数据类型:#Numbers(数字)int#String(字符串)str字符串一旦创建,不可修改,一旦修改或者拼接,都会造成重新生成字符串#List(列表)list中号括起来,逗号分开,可以是数字、字符串、列表、布尔值,列表可以嵌套任何类型,列表有序元素可以被修改#Tup......
  • 考研数学错题整理分享
    对于考研数学来说,错题整理反思实在是太太太太太关键了,所以,即便是在往期已经提到过了很多次错题本,今天依然选择单独整理一期来与大家分享一些自己用到的、看到的亦或是别人分享的有关错题整理方法的经验。如果想要取得一个较好的成绩,那就请一定要看到最后。     考研......
  • 【笔记】模板整理以及警钟长鸣
    图论部分\(\text{I}\).连通性部分有向图强连通分量\(\text{(SCC)}\)代码模板#include<bits/stdc++.h>usingnamespacestd;constintN=1e4+5;intn,m,num,scc_cnt,top;boolinstk[N];intdfn[N],low[N],stk[N],blg[N];vector<int>g[N],ans_scc[N],ne......
  • 中文分词器,整理自Ai
    1.Jieba(结巴)分词pipinstalljiebaimportjieba#使用默认模式进行分词seg_list=jieba.cut("我爱自然语言处理",cut_all=True)print("".join(seg_list)) 2.SnowNLPpipinstallsnownlpfromsnownlpimportSnowNLPs=SnowNLP("我爱自然语言处理")print('......
  • 国内ChatGPT-4.0中文镜像网站整理| 7月更新
    ChatGPT是什么ChatGPT是一个通过大量文本训练出来的聊天机器人,它能够理解和生成自然语言。就像一个非常聪明的自动补全工具,根据你输入的内容来预测并生成合适的回应。比如,你问它一个问题,它会根据它学到的知识给你一个有逻辑的回答。简单来说,它就是一个能和你对话、回答问题的......
  • 华南理工大学线性代数笔记整理5——特征值与特征向量
    本人华工21级电信本科生,目前大四,前段时间收拾书本时发现了自己保存完整的线代笔记和一些整理,应该会对大一新生的期末考试起作用,故作分享。注:大一时本人都是用手写A4纸的方式做笔记做复习,所以这里上传的都是一些纸质笔记的扫描件,尽量可以保证清晰。以分章节的方式,本章为第5章......