春天@RequestMapping

2023-11-25

我不断看到这种参数value = "/redirect/{id}" in a @RequestMappingSpring 的注释。我一直想知道什么是{id}这里?这是某种Expression Language?

我所看到的示例代码:

@RequestMapping( value = "/files/{id}", method = RequestMethod.GET )
public void getFile( @PathVariable( "id" )
String fileName, HttpServletResponse response )
{
    try
    {
         // get your file as InputStream
         InputStream is = new FileInputStream("/pathToFile/"+ fileName);
         // copy it to response's OutputStream
         IOUtils.copy( is, response.getOutputStream() );
         response.flushBuffer();
    }
    catch( IOException ex )
    {
         throw new RuntimeException( "IOError writing file to output stream" );
    }

}

我的问题是什么{id}在映射中以及它与@PathVariable注释以及如何使用它?我从网上获取了一些信息,但如果能听到你们更清晰的解释,我会更加感激。


The {foo}参与一个@RequestMappingvalue 是一个路径变量,表示从 url 路径而不是从请求参数检索的值。

例如,如果用户访问/files/foo.zip, then {id}将匹配foo.zip然后告诉 Spring 将该值存储到具有注释的变量中@PathVariable("id").

您可以在 URL 标识符中包含多个路径变量@RequestMapping注释值,您可以使用以下方法将这些值注入到变量中@PathVariable与您在大括号内使用的 id 相同。

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

春天@RequestMapping 的相关文章

  • GET 请求的 Spring 注解

    这两种spring GET方法有什么区别呢 哪一种是首选方法 Component Scope request Path public class TestComponent GET Path hello public String prin
  • Java:线程“主”中的异常 java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:

    我是初学者 谁能帮我弄清楚我们在做什么 我正在尝试读取字符串并将字符串的每个字符存储在数组中 import java util Scanner public class CoreMainDigitExtractor static Scann
  • 项目缺少所需的注释处理库

    我的 Eclipse IDE 突然在问题视图中显示 xxxx 项目缺少所需的注释处理库 xxxx M2 REPO 中的一些旧 jar 我用谷歌搜索 没有找到任何答案 为什么我的项目使用旧的 jar 以及错误来自哪里 To remove th
  • 如何将现有的 SQLite3 数据库导入 Room?

    好吧 我在桌面上使用 SQLite3 创建了一个只需要读取的某些信息的数据库 我正在制作的应用程序不需要在此表中插入或删除信息 我在 Room 数据库层上做了相当多的谷歌搜索 所有文档都需要在构建应用程序时在 Room 中创建一个新的数据库
  • javax.persistence.RollbackException:提交事务时出错],根本原因是 java.lang.StackOverflowError:null

    我有一个使用 Spring Data REST 框架的 Spring Boot API 从 spring boot starter parent 2 1 0 RELEASE 继承的依赖项 我正在尝试执行 PUT 或 PATCH 请求来更新实
  • JTextField 和 JTextArea

    JTextField 和 JTextArea 有什么不同 是否可以在一个班级中使用这两个班级 总之 JTextField 是单行文本字段 而 JTextArea 可以跨越多行 文档中清楚地解释了这些差异 文本区 http docs orac
  • 使用 JSch 分别为各个提示提供输入

    问题是 SSH 连接需要在常规登录后提供另一个用户 ID 和密码信息 我正在使用 JSch 连接到远程服务器 它接受以下形式的输入InputStream 和这个InputStream只能通过一次 由于会话是交互式的 这会导致问题 我尝试将输
  • Android WebView文件上传

    我正在开发一个 Android 应用程序 基本上它是一个WebView和一个进度条 Facebook 的移动网站 m facebook com 已加载到WebView 当我单击 选择文件 按钮上传图像时 没有任何反应 我已经尝试了所有的解决
  • Java - JPanel 内有边距和 JTextArea

    我想创建这样的东西 主面板有其边距 x 并且 TextArea 位于该面板的中心 几乎填满了面板 底部是另一个具有自定义尺寸 高度 y 的面板 可以使用某些快捷方式将其切换为可见和不可见 底部面板有 FlowLayout 和几个元素 问题是
  • 如何使用 Spring Boot 传输音频

    我想让用户能够播放声音 我的实现在 Firefox 上运行良好 在 Safari 上 不播放声音 我验证了音频控制可以在 Safari 中与其他网站一起使用 所以 我认为我必须更改控制器中的某些内容 控制器 RequestMapping v
  • 如何配置Spring boot分页从第1页开始,而不是从0开始

    boot 1 4 0 可分页 用于分页 它工作正常 没有任何问题 但默认情况下 页面值从 0 开始 但在前端 页面值从 1 开始 那么是否有任何标准方法来增加值而不是手动增加代码内的页码 public Page
  • 使用 Spring 注入 Log4J 记录器

    我有一个带有以下 web xml 的 spring 2 5 webapp
  • 如何在 Bean Validation 1.0 中构造 ConstraintViolationException?

    我对 javax validation API 感到困惑 我正在编写一个简单的测试来理解它 Sample sample new Sample Set
  • 使用 HTTPServletRequestWrapper 包装请求参数

    我有一个可以验证 授权 REST 调用的过滤器 该过滤器需要访问请求参数 因此我为此编写了一个自定义 HTTPServletRequestWrapper import java util Collections import java ut
  • JAXB 编组器无参数默认构造函数

    我想从 java 库中编组一个 java 对象 当使用 JAXB marschaller 编组 java 对象时 我遇到了一个问题 A 类没有无参数默认构造函数 我使用Java Decompiler来检查类的实现 它是这样的 public
  • JPA 将 BigDecimal 作为整数保存在数据库中

    我在数据库中有这个字段 ITEMCOST NUMERIC 13 DEFAULT 0 NOT NULL 在JAVA中 Entity中的字段定义如下 Column name ITEMCOST private BigDecimal itemCos
  • 在 Freemarker 模板中检查 Spring 安全角色和记录的用户名

    有谁知道 freemarker 标签来检查 freemarker 文件中的 spring 安全角色和用户名 我从网络上的几个资源中发现以下代码将打印登录的用户名 但它没有打印用户名 而是打印 登录为
  • java中的预增量/后增量

    有人可以帮助我理解为什么 int i 1 int j 1 int k 1 int l 1 System out println i i System out println j j System out println k k System
  • Java 中的微分方程

    我正在尝试用java创建一个简单的SIR流行病模型模拟程序 基本上 SIR 由三个微分方程组定义 S t l t S t I t l t S t g t I t R t g t I t S 易感人群 I 感染人群 R 康复人群 l t c
  • 将数组值导出到 csv 文件 java

    我只需要帮助将数组元素导出到 csv 文件 我不知道我的代码有什么问题 任何帮助将不胜感激 谢谢 for int index 0 index lt cols length index FileWriter fw new FileWriter

随机推荐

  • 如何让chrome扩展全屏显示?

    我正在尝试使 chrome 扩展成为全屏 但我能做的最大是半宽 更重要的是它只是在底部给了我一个滚动条 我怎样才能让它全屏显示 意思是 chrome浏览器的整个宽度 谢谢 chrome windows update windowId sta
  • 打印 UTF-8 编码的字节字符串

    我有一个表格的数据 v xc5 x84 这是 utf 8 编码字符 的字节表示 如何使用变量 v 打印 gt gt 我正在使用 python 2 7 2 原始变量 v 包含字符串 v xc5 x84 双反斜杠 vs v xc5 x84 单个
  • Python 脚本在后台运行时挂起

    我有一个 Python 脚本 在 2 7 上运行 当我从命令行运行它时 它的行为与在后台运行时不同 当我从终端运行它时 它按预期运行 两个线程作为守护进程运行 将输出写入窗口 同时主循环等待退出命令 它会永远运行 直到我输入 quit py
  • 使用 GTK 查找工作区大小(屏幕大小减去任务栏)

    如何创建一个充满整个桌面的主窗口不覆盖任务栏 或被任务栏覆盖 and 没有被最大化 我可以使用以下命令找到整个屏幕尺寸并相应地设置主窗口 window gtk Window screen window get screen window r
  • dependencyManagement 和 Maven 中的依赖关系之间的区别

    有什么区别dependencyManagement and dependencies 我已经在 Apache Maven 网站上看到了文档 似乎在下面定义了一个依赖项dependencyManagement可以在其子模块中使用而无需指定版本
  • 将选取的图像保存到 CoreData

    我能够从照片库中选取并显示图像 但我的目标是能够将选取的图像或文件路径保存到核心数据 以便在选择保存的记录时该图像也会显示 我有 CoreData 工作 并且我能够显示 CoreData 中的文本 这只是图像阻碍了我 IBAction fu
  • 如何在 MATLAB 中以彩色打印字符串?

    通常当您在 MATLAB 中打印字符串时 disp this will print black letters 可以改为彩色打印吗 If you fprintf to stderr 它可以以另一种颜色出现 我认为这取决于您的喜好 有未记录的
  • 使用 Flask 路由捕获整数列表

    我正在尝试在 Flask 中实现一个基本计算器 我定义了两个 url 参数 当我只想添加两个值时这是可以管理的 但是 我想添加任意数量的值 如何在不编写无限长路线的情况下获得整数列表 app route add
  • 在talend中运行并行作业

    我遇到一种情况 我需要在talend 中并行运行五个不同的子作业 问题是 在我的选择查询中 我将获得五个不同的 ID 然后对于每个特定的 id 我需要运行五个不同的作业 tparrallelize 组件的问题是 它不允许我将上下文变量传递给
  • 是否有可能有一个“永久”占位符?

    我正在开发一个系统 其中包括一些文本框 用于测量温度 每分钟心率等 现在我只使用一个文本框 并在同一行的文本框后面添加单位 我的问题是空间相当有限 因此如果可能的话 我想在文本框中包含单位信息 例如右对齐 我了解 HTML5 占位符属性 但
  • Linux 上 backtrace() 的替代方案,可以查找静态函数的符号

    在手册页中 backtrace Linux 上的函数说 请注意 静态 函数的名称 没有暴露 并且在回溯中不可用 但是 启用调试符号后 g 像这样的程序addr2line and gdb仍然可以获得静态函数的名称 有没有办法从进程本身中以编程
  • 在 PHP 中从 mySQL 表填充下拉框

    我正在尝试使用 Php 中的 mySQL 查询结果填充下拉框 我在网上查找了示例 并在我的网页上尝试过它们 但由于某种原因 它们根本没有填充我的下拉框 我尝试调试代码 但在我查看的网站上并没有真正解释 而且我无法弄清楚每一行代码的含义 任何
  • C++ 专用模板函数接收文字字符串

    我正在编写一个具有许多专业化的模板方法 class FieldValue public template lt typename T gt void Set const T value 其中之一是 template lt gt void F
  • 在 JavaScript 中检查对象是否可序列化的可靠方法

    是否有已知的方法或库已经有一个帮助程序来评估对象是否可以在 JavaScript 中序列化 我尝试了以下方法 但它不涵盖原型属性 因此它提供了误报 isEqual obj JSON parse JSON stringify obj 还有另一
  • SQL Server 中用于寻址表的正确语法是什么?

    这似乎是一个相当明显的问题 但我无法想出合适的术语来表达我想要问的问题 因此为此提供参考材料一直很棘手 不过 答案似乎很明显 在检查 SQL Server 的 Pluralsight 培训材料时 他们建议始终引用 常规 查询 您可能为基本
  • gradle 构建在 lint 任务上失败

    我有一个使用 Android Studio 0 4 0 创建的简单 Android 项目 我使用 Gradle 1 9 和 Gradle Android Plugin 0 7 昨天我添加了杰克 沃顿的黄油刀库在我的 gradle 构建脚本中
  • Ruby:获取变量名称[重复]

    这个问题在这里已经有答案了 如何获得变量名 例如 def get var name var return variable name end myname nil get var name myname gt myname 最初目的 som
  • 如何使用 setuptools 打包 Python 守护进程

    如何使用 setuptools 打包 Python 应用程序 以便在安装时 例如通过 setup py 或 pip 将守护程序脚本放置在适当的位置 启动它 并将其标记为在启动时自动启动 就我而言 我的代码仅适用于 Linux 因此我只关心在
  • 无法打开 Hibernate 会话以进行事务、JavaConfig

    找不到错误 Spring MVC Hibernate JavaConfig 网络应用程序配置 package com sprhib init import java util Properties import javax annotati
  • 春天@RequestMapping

    我不断看到这种参数value redirect id in a RequestMappingSpring 的注释 我一直想知道什么是 id 这里 这是某种Expression Language 我所看到的示例代码 RequestMappin