如果请求参数不是 Spring MVC 中的 bean,如何验证请求参数?

2024-01-14

下面是我的 Spring MVC REST 服务中的 POST 端点。我想使用 spring 验证框架来确保我收到的列表不为空。我该怎么做?我必须向周围提供包装豆吗listOfLongs?

    @RequestMapping(value = "/some/path", method = RequestMethod.POST)
    @ResponseBody
    public Foo bar(@Valid @NotEmpty @RequestBody List<Long> listOfLongs) {

     /*   if (listOfLongs.size() == 0) {
            throw new InvalidRequestException();
        }
     */

        // do some useful work
    }

请求正文应该是什么?

1) [123,456,789]
2) { listOfLongs : [123,456,789]}

提供包装 bean 是一个很好的做法。

class LongList {

 @NotEmpty
 private List<Long> listOfLongs;

 // Setters and Getters ...

}

那么,请求正文应该是{ listOfLongs : [123,456,789]}

@RequestMapping(value = "/some/path", method = RequestMethod.POST)
@ResponseBody
public Foo bar(@Valid @RequestBody LongList listOfLongs) {   

    // do some useful work
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果请求参数不是 Spring MVC 中的 bean,如何验证请求参数? 的相关文章

  • Spring @Validated 在服务层

    Hej 我想使用 Validated group Foo class 在执行方法之前验证参数的注释 如下所示 public void doFoo Foo Validated groups Foo class foo 当我将此方法放入 Spr
  • 按位运算符简单地翻转整数中的所有位?

    我必须翻转整数的二进制表示形式中的所有位 鉴于 10101 输出应该是 01010 当与整数一起使用时 完成此操作的按位运算符是什么 例如 如果我正在编写类似的方法int flipBits int n 什么会进入身体 我只需要翻转数字中已经
  • 探索java图像处理的好资源[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我是图像处理领域的新手 请推荐一些好的资源 书籍和网络链接 来学习 Java 中的图像处理 最适合隐写术分析 适合初学者和高级水平 我看过
  • Java:无安全管理器:RMI 类加载器已禁用

    您好 我有 RMI 应用程序 现在我尝试从客户端调用服务器上的一些方法 我有以下代码 public static void main final String args try Setting the security manager Sy
  • 无法将 INode 类型值分配给 类型变量。为什么?

    我想知道为什么以下代码无法工作 public static
  • 想要从java中的char数组创建字符流

    我想从 char 数组构造一个流以使用 java 8 功能 例如过滤器和映射 char list a c e Stream
  • 为本地@ExceptionHandler编写JUnit测试

    我有以下控制器 class Controller ResponseStatus HttpStatus OK RequestMapping value verifyCert method RequestMethod GET public vo
  • 如何从 Java 中“double”类型的值中删除小数值

    我正在调用一个名为 calculateStampDuty 的方法 它将返回 财产需缴纳的印花税金额 百分比计算有效 很好 并返回正确的值 15000 0 但是 我想显示该值 前端用户只是 15000 所以只想删除小数点和任何前面的值 此后
  • 欧拉项目 45

    我还不是一名熟练的程序员 但我认为这是一个有趣的问题 我想我应该尝试一下 三角形 五边形 六边形 数字由以下生成 公式 三角形 T n n n 1 2 1 3 6 10 15 五边形 P n n 3n 1 2 1 5 12 22 35 六角
  • java 中的 Try-with-resources 和 return 语句

    我想知道是否放一个return里面的声明尝试资源block 防止资源自动关闭 try Connection conn return conn createStatement execute 如果我写这样的东西将会联系被关闭 Oracle 文
  • 用数组反向查找对象

    假设我有一个这样的对象 resourceMap a 0 1 2 3 4 5 6 7 8 9 10 b 11 12 c 21 23 d 54 55 56 57 510 确定是否的最佳方法是什么resourceId 21将会 c 我们不知道钥匙
  • 如何加载图像文件到ImageView?

    我试图在从文件选择器中选择图像文件后立即显示该图像文件 文件选择器仅限于 png 和 jpg 文件 所选文件存储在文件类型的变量中 为此 我设置了一个 ImageView 我希望用这个新文件设置图像 唯一的问题是它的类型是文件而不是图像 如
  • java中的第三个布尔状态是什么?

    虽然我知道根据定义 布尔值仅包含两种状态 真或假 我想知道布尔值在用这些状态之一初始化之前有什么值 它默认为 false http java sun com docs books tutorial java nutsandbolts dat
  • 在片段之间切换时底部导航栏会向下推

    在我的活动中 我有一个底部导航栏和框架布局来显示片段 一切正常 但问题是当我开始按顺序从 1 4 移动时 底部导航栏保持在其位置 但当我突然从 4 跳到2 然后底部导航栏就会超出屏幕 当再次单击同一项目时 它就会回到正常位置 该视频将清楚地
  • 如何在启用嵌入时间戳和 LTV 的情况下签署 PDF?

    我正在尝试签署启用了时间戳和 LTV 的 pdf 以便它在 Adob e Reader 中显示如下 在英语中 这意味着 签名包含嵌入的时间戳 和 签名启用了 LTV 这是我正在使用的代码 PrivateKey pk get pk from
  • 如何在 Java 中创建一个带有连字符的值的静态枚举?

    如何创建如下所示的静态枚举 static enum Test employee id employeeCode 截至目前 我遇到了错误 这对于 Java 来说是不可能的 因为每个项目都必须是有效的标识符 并且有效的 Java 标识符可能不包
  • 动态创建 JSON 对象

    我正在尝试使用以下格式创建 JSON 对象 tableID 1 price 53 payment cash quantity 3 products ID 1 quantity 1 ID 3 quantity 2 我知道如何使用 JSONOb
  • 内部类的访问修饰符[重复]

    这个问题在这里已经有答案了 可能的重复 受保护 公共内部类 https stackoverflow com questions 595179 protected public inner classes 我确信这个问题已经被问过 但我找不到
  • rabbitmq 的 REST API

    有没有办法从 ajax 向 RabbitMQ 发送数据 我的应用程序由数千个 Web 客户端 用 js 编写 和 WCF REST 服务组成 现在我试图弄清楚如何为我的应用程序创建可扩展点 这个想法是有一个rabbitmq实例 它从放置在一
  • 检查 Java 字符串实例是否可能包含垃圾邮件数据的最简单方法

    我有一个迭代 String 实例的过程 每次迭代对 String 实例执行很少的操作 最后 String 实例被持久化 现在 我想为每次迭代添加一个检查 String 实例是否可能是垃圾邮件的检查 我只需验证 String 实例不是 成人材

随机推荐

  • 当两个标记相邻时,Google 地图错误的标记单击事件

    我已经为标记应用了自定义 PNG 图像 与默认标记聚类器圆的大小大致相同 并且发生了这种奇怪的事情 当两个标记靠近时 但即使它们不重叠 我需要点击一个标记两次 因为第一次点击错误地给了我前一个标记 That is 有两个标记 A 和 B 彼
  • React Native WebView 未加载源

    我正在遵循 React Native 文档中的示例 但不知道为什么我的 WebView 无法加载网站 这是我的代码 Sample React Native App https github com facebook react native
  • 你可以让 mongo $push 前置而不是附加吗?

    我希望在我的集合的开头添加push add 而不是在执行mongo push 时附加到末尾 是否可以进行原子推送更新 将元素添加为第一个而不是最后一个 2014年更新 是的你可以 http docs mongodb org manual r
  • WPF FlowDocument 绑定

    我正在使用微软的XAML HTML 转换器 http msdn microsoft com en us library aa972129 aspx将 HTML 从数据库转换为 XAML 字符串 Microsoft 转换器似乎正确设置了文本格
  • urlencode() 是否足以阻止 2011 年的所有 SQL 注入攻击

    我正在将一些简单的用户数据传递到 mysql 数据库中 PHP 的 urlencode 返回一个字符串 其中包含除 之外的所有非字母数字字符 已替换为百分号 后跟两个十六进制数字 我不担心空格变成加号 或其他格式问题 我也不担心 XSS 和
  • DPDK“端口数必须为偶数”一台以太网设备

    我正在尝试从 DPDK 源代码运行骨架示例 但每当我尝试在 make 过程后构建代码时 我都会收到一条错误消息 端口数必须为偶数 但是当我尝试查看以太网设备列表时我只能看到一台设备 我在 vmware 工作站环境下的 Ubuntu 中运行框
  • 使用 Runtime.getRuntime 在 Android 上运行 shell 命令

    我正在开发一个设备管理应用程序 已由制造商签名 我使用它来安装其他应用程序 使用以下适用于 android 9 的 adb shell 命令 cat sdcard Download myfolder newapp apk pm instal
  • 如何重试 Promise 决议 N 次,并在尝试之间有延迟?

    我想要一些 JavaScript 代码将 3 个东西作为参数 返回 Promise 的函数 最大尝试次数 每次尝试之间的延迟 我最终做的是使用for环形 我不想使用递归函数 这样 即使有 50 次尝试 调用堆栈也不会长 50 行 这里是打字
  • JPQL和日期比较(查询中的约束)

    我的应用程序模型对象包含一个日期字段 时间戳 Entity Table name MYTABLE public class Application private Date timeStamp 我正在尝试构建一个 JPQL 查询 该查询将选
  • SVN 说我需要执行清理,但清理失败

    这不是重复的问题 因为其他主题中提供的解决方案对我不起作用 当我尝试提交时 错误 工作副本 D Webs Drupal 6 已锁定错误 请执行 清理 命令 当我尝试进行清理时 清理无法处理以下路径 D Webs Drupal 6 有谁知道我
  • 如何在 Jinja2 模板中检查 2 个日期之间的差异是否 > 或 < 1 个月?

    我正在使用 jinja2 模板 带有 Ansible 在其中我需要检查两个日期之间的差异 我没有日期的纪元 但我有 yyy mm dd HH MM ss 格式 没有毫秒 所以我的问题是 1 jinja2中有没有办法比较两个日期 我不想安装任
  • `multirust` 在哪里安装 Rust 语言源代码?

    我安装了multirustRust 编程语言的版本 我试图配置racer代码完成包通过以下方式指向 Rust 源代码RUST SRC PATH环境变量 但是 我似乎找不到 Rust 源文件的位置 当我打字时which rustc我被指出 u
  • 无法在 Android 项目中导入 Google Cloud Endpoints 客户端库类

    我无法让 Google Cloud Endpoints 正常工作 我有一个在 GAE 上运行的 Python 端点项目 并且使用 api 资源管理器可以完美运行 然而 我正在努力正确生成客户端库并在我的 Android 应用程序中使用它 我
  • 如何格式化 Opera 浏览器的输入占位符文本?

    我使用下面的伪元素和伪类使用 CSS 设置了占位符文本的样式 这可以在除 Opera 之外的所有主要浏览器上完成工作 我的理解是 Opera 不支持占位符文本样式 有谁知道如何设计 Opera 输入占位符文本的样式 CSS webkit i
  • Sequelize:销毁/删除表中的所有记录

    我正在使用 Mocha 进行单元测试 当测试开始时 我想删除表中所有以前的记录 我尝试过的 db User destroy force true then gt then gt done db User destroy where unde
  • R 如何在将 csv 文件写入磁盘之前估计其大小

    R 有什么方法可以在实际将 csv 文件写入磁盘之前估计其文件大小write csv or readr write csv 如果用户不小心尝试在函数中将大文件写入磁盘 我想实现警告 数据帧的内存占用之间似乎存在某种关系 object siz
  • 加载 R 包时如何分配可用的变量?

    我已经弄清楚如何制作一个包含一些我经常使用的调色板的包 我修改了代码this https drsimonj svbtle com creating corporate colour palettes for ggplot2博客文章以使其发挥
  • 在程序集中写入文件时出现问题

    我正在尝试用汇编语言编写一个简单的程序 在其中打开一个现有文件并在其中写入一条消息 这是我在数据段中定义的消息 当我想写入文件时会出现问题 在我尝试写入后 AX 寄存器将包含 5 诺顿专家指南称这是 拒绝访问 错误代码 关于我做错了什么有什
  • IronPython db-api 2.0

    有谁知道哪些 db api 2 0 驱动程序可以与 IronPython 配合使用 如果是这样 有人尝试过将它与 SQLAlchemy SQLObject 或 Django ORM 一起使用吗 我知道这是一个很晚的答案 但我今天才看到这个问
  • 如果请求参数不是 Spring MVC 中的 bean,如何验证请求参数?

    下面是我的 Spring MVC REST 服务中的 POST 端点 我想使用 spring 验证框架来确保我收到的列表不为空 我该怎么做 我必须向周围提供包装豆吗listOfLongs RequestMapping value some