具有路径变量的多个请求映射值

2024-02-08

@RequestMapping(value = {"/abcd", "/employees/{value}/{id}"})
public String getEmployees(
      @PathVariable(value = "value") String val, 
      @PathVariable(value = "id") String id,
      @RequestParam(value = "param", required = false) String value) {
        // ********

}

对于一个 url,我传递路径变量,而对于一个 url,我不传递路径变量。但我希望两个 url 都能使用相同的 API。我怎样才能实现它?


现在,您可以通过对 Java 8 的支持来拥有可选的路径变量Optional https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html。至少需要 Spring 版本 4.x。

@RequestMapping({"/abcd", "/employees/{value}/{id}"})
public String getEmployees(
    @PathVariable("value") Optional<String> val, 
    @PathVariable("id") Optional<String> id,
    @RequestParam("param") Optional<String> value
) {
    // ********
}

注意:这不适用于可选原语(OptionalInt, etc.).

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

具有路径变量的多个请求映射值 的相关文章

  • 任务“:app:dexDebug”执行失败

    我目前正在处理我的项目 我决定将我的 Android Studio 更新到新版本 但在我导入项目后 它显示如下错误 Information Gradle tasks app assembleDebug app preBuild UP TO
  • java中的csv到pdf文件

    我正在尝试获得一个csv文件解析为pdf 到目前为止我所拥有的内容附在下面 我的问题是这段代码最终出现在 pdf 中的文件在 csv 文件的第一行被截断 我不明白为什么 附示例 本质上我想要一个没有任何操作的 csv 文件的 pdf 版本
  • 如何打印整个字符串池?

    我想打印包含文字的整个字符串池String使用添加的对象intern 就在垃圾收集之前 JDK有没有隐式的方法来进行这样的操作 我们如何检查字符串池 EDIT The comment suggests that there may be a
  • java.lang.Class: 在 java 程序中初始化 log4j 属性文件时出错

    我正在尝试使用 log4j 运行独立的 java 程序 但在调试时收到以下消息 控制台上没有 log4j 相关日志 log Logger 1343 java lang Class ERROR in 18b4aac2 有人可以建议这里出了什么
  • 将链接对象转换为流或集合

    我想迭代堆栈跟踪 堆栈跟踪由可抛出对象组成 其 getCause 返回下一个可抛出对象 最后一次调用 getCause 返回 null 示例 a gt b gt null 我尝试使用 Stream iterable 这会导致 NullPoi
  • 通过 InjectMocks Spy 注入对象

    我需要对一个类运行一系列单元测试 该类具有 Autowired Logger 实现 实现的基本思想是 Mock Logger logger InjectMocks TestedClass tested 但我想保存日志输出功能 Mockito
  • 有没有好的方法来解析用户代理字符串?

    我有一个Java接收模块User Agent来自最终用户浏览器的字符串的行为需要略有不同 具体取决于浏览器类型 浏览器版本甚至操作系统 例如 FireFox 7 0 Win7 Safari 3 2 iOS9 我明白了User Agent由于
  • 如何解决 onEditCommit 事件上的类型不匹配错误?

    我在 Fxml 中使用 onEditCommit 事件在用户编辑数据后检索数据 FXML 代码
  • MI设备中即使应用程序被杀死,如何运行后台服务

    您好 我正在使用 alaram 管理器运行后台服务 它工作正常 但对于某些 mi 设备 后台服务无法工作 我使用了服务 但它无法工作 如何在 mi 中运行我的后台服务 MI UI有自己的安全选项 所以你需要的不仅仅是上面提到的粘性服务 你需
  • Java:从元素创建 DOM 元素,而不是文档

    如您所知 在 Java 中创建 Dom 元素的正确方法是执行以下操作 import org w3c dom Document import org w3c dom Element Document d Element e e d creat
  • 尝试在没有 GatewayIntent 的情况下访问消息内容

    我希望每当我写一条打招呼的消息时 机器人都会在控制台中响应一条消息 但它只是给我一个错误 JDA MainWS ReadThread WARN JDA Attempting to access message content without
  • 覆盖 MATLAB 默认静态 javaclasspath 的最佳方法

    MATLAB 配置为在搜索用户可修改的动态路径之前搜索其静态 java 类路径 不幸的是 静态路径包含相当多非常旧的公共库 因此如果您尝试使用新版本 您可能最终会加载错误的实现并出现错误 例如 静态路径包含 google collectio
  • 在 Spring MVC 3.2 中实现 JSONP

    据我了解 可以在 Spring MVC 的早期版本中使用自定义过滤器来实现 JSONP 此外这个例子 http www iceycake com 2012 06 xml json jsonp web service endpoints sp
  • 从 html 页面和 javascript 调用 java webservice

    我正在尝试从 javascript 调用 java 实现的 Web 服务 使用 NetBeans IDE 我读过很多关于 jQuery 和 AJAX 的内容 但我似乎无法掌握它 假设我的 Web 服务 WSDL 位于 http localh
  • 让JScrollPane控制多个组件

    对于我的应用程序 我正在设计一个脚本编辑器 目前我有一个JPanel其中包含另一个JPanel保存行号 位于左侧 以及JTextArea用于允许用户输入代码 位于右侧 目前 我已经实施了JScrollPane on the JTextAre
  • 如何使用 Mockito 和 Junit 模拟 ZonedDateTime

    我需要模拟一个ZonedDateTime ofInstant 方法 我知道SO中有很多建议 但对于我的具体问题 到目前为止我还没有找到任何简单的解决办法 这是我的代码 public ZonedDateTime myMethodToTest
  • 从java中的字符串数组中删除空值

    java中如何从字符串数组中删除空值 String firstArray test1 test2 test4 我需要像这样没有 null 空 值的 firstArray String firstArray test1 test2 test4
  • 从一个文本文件中获取数据并将其移动到新的文本文件

    我有一个文件 里面有数据 在我的主要方法中 我读入文件并关闭文件 我调用另一种方法 在原始文件的同一文件夹内创建一个新文件 所以现在我有两个文件 原始文件和通过我调用的方法生成的文件 我需要另一种方法 从原始文件中获取数据并将其写入创建的新
  • 为什么 BufferedWriter 不写入文件?

    我有这个代码 String strings Hi You He They Tetrabenzene Caaorine Calorine File file new File G words txt FileWriter fWriter Bu
  • MongoDB Java 驱动程序:MongoCore 驱动程序与 MongoDB 驱动程序与 MongoDB 异步驱动程序

    MongoDB Java 驱动程序有三种不同的驱动程序选项 核心驱动 MongoDB 驱动程序 MongoDB 异步驱动程序 The 驱动程序描述页面 https docs mongodb org ecosystem drivers jav

随机推荐

  • Java 中的树实现(根、父级和子级)

    我需要创建一个类似于 Java 中所附图像的树结构 我发现了一些与此相关的问题 但我还没有找到令人信服且解释清楚的答复 应用业务包括食品超级品类 主菜 甜品等 每个类别都可以有父项或子项等 import java util ArrayLis
  • 使密封类层次结构可解析

    我有类似下面的内容 我想将它们作为意图参数传递 sealed class BasketType Parcelable class BasketOne val basketId String BasketType constructor pa
  • travis go error '命令“eval go get -t -v ./...”失败'

    我有一个非常简单的设置 Travis yml 文件 https github com openassistive OpenATFrontEnd blob master travis yml https github com openassi
  • 当我将文本从 java servlet 加载到 JTextPane 时,为什么会丢失换行符?

    我尝试使用 java servlet 加载包含多行文本的文本文件的内容 当我在浏览器中测试 servlet 时 它工作正常 文本加载新行字符 但是当我将它加载到我的 swing 应用程序中的字符串然后使用textpane setText t
  • 从 int** 到 const int** 的转换

    为什么我会进入这段代码 void foo const int int main int v new int 10 foo v return 0 这个错误 invalid conversion from int to const int fp
  • 使用 Mapstruct 作为 JOOQ 的 RecordMapper

    我想实现我自己的RecordMapper并使用 Mapstruct 将 Record 映射到 POJO 我不太明白如何实现这一点 我遵循了文档的这一部分 https www jooq org doc 3 13 manual sql exec
  • unicode中字符串的长度不同

    尽管字符串中的字符数相同 但为什么以下字符串的长度不同 echo strlen 馐 馑 馒 馓 馔 馕 首 馗 馘 br echo strlen br Outputs 35 26 第一批字符每个占用 3 个字节 因为它们在 39000 个字
  • 如何删除信号处理程序

    我已经制作了以下信号处理程序 struct sigaction pipeIn pipeIn sa handler updateServer sigemptyset pipeIn sa mask sa sa flags SA RESTART
  • 如何在iPhone上进行Base64编码

    如何在iPhone上进行Base64编码 我发现了一些看起来很有希望的例子 但永远无法让它们在手机上工作 你可以看一个例子here http iosdevelopertips com core services encode decode
  • 图像捕获延迟 - React Native Camera / Expo Camera

    我正在尝试实现与 Facebook 或 Instagram 相同的功能 即时预览相机拍摄的图像 此时 当调用此函数时 我的 take 被正确获取 takePicture async function if this camera this
  • 将 8 字节的小端二进制转换为双精度浮点数

    我有一个二进制文件 我逐字节读取 我遇到一个 8 字节长的部分 包含一个双精度浮点 小端 我不知道如何读取它并通过掩蔽和 或转换正确计算它 具体来说 文件类型是 LAS 但这并不重要 Java有什么技巧吗 您可以使用ByteBuffer h
  • Python Fabric:如何响应键盘输入?

    我想自动响应某些程序提示的某些问题 例如 mysql 提示输入密码 或者 apt 询问 是 或 当我想使用 manage pyrebuild index 重建我的干草堆索引时 对于 MySQL 我可以使用 password 开关 并且我确信
  • 在 MSVC 中处理 __attribute__

    我想知道处理包含 GCC 的代码的最佳方法是什么 attribute 使用 MSVC 时的扩展 以下是处理此问题的安全方法 define attribute x blank should simply ignore thanks to C
  • 如何跨包引用 Android“资产”?

    我有一个以 免费 和 专业 版本发布的 Android 应用程序 我已经使用从两个版本引用的基础 库 项目设置了我的项目 这样我的包集如下所示 com example myapp com example myapp free com exa
  • 如何翻译活动记录模型验证

    当我提交有错误的表单时 它会返回一条错误消息 如何使用 i18n 翻译这些错误消息 我已经翻译了我视图中的所有其他文本 所以我知道 l18n 在 Rails 中是如何工作的 我现在明白了 2 errors prohibited this u
  • 寻找最高的键

    我只是对为什么我的代码不起作用感到困惑 这是我到目前为止的问题和代码 测试运行表明我的答案是错误的 给定字典d 找到字典中最大的key并将对应的值与变量关联起来val of max 例如 给定字典 5 3 4 1 12 2 2 将与val
  • 循环数组和另一个对象中的对象

    我有以下结构 我需要在 React 中获取内部值并通过 我想我需要获取一个值数组 例如 Bitcoin Etherium 并通过它进行映射 我怎样才能实现它 let arr CoinInfo Id 1182 Name BTC FullNam
  • 汇编中的结构或类

    我需要 C 中的结构或类之类的东西 例如 我需要一个带有数组和两个属性 大小和长度 的类以及一些函数 例如append和remove 如何使用宏和过程在汇编中实现这一点 Tasm 支持例如 struc String note without
  • Java流按2个字段排序

    我有需要按 2 个参数排序的项目列表 第一个参数是 orderIndex 并且我使该部分正常工作 参见下面的代码 orderIndex 之后的第二个参数是 amount 所以基本上第一个项目应该是顺序索引最低的项目 并且需要按数量排序 re
  • 具有路径变量的多个请求映射值

    RequestMapping value abcd employees value id public String getEmployees PathVariable value value String val PathVariable