- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
今天我正在研究可从 STS 仪表板下载的 Spring MVC 展示
我对Spring 3.2版本引入的新注解@MatrixVariable和URI路径中Matrix变量的使用有些疑惑。
在我的 home.jsp View 中,我有以下链接:
<a id="matrixVar" class="textLink" href="<c:url value="/data/matrixvars;foo=bar/simple" />">Matrix variable</a>
在这里阅读关于@MatrixVariable注解的官方文档:http://static.springsource.org/spring-framework/docs/3.2.0.M2/reference/html/mvc.html#mvc-ann-matrix-variables
我明白了以下事情:
1) 矩阵变量是一对2) 我可以将这些变量放在任何 URI 路径段中
所以我对之前的链接有些疑惑:
当我点击前面的链接时调用的 URI 是什么?
是/spring-mvc-showcase/data/matrixvars/simple 吗?!?! (只有应用程序名称的 spring-mvc-showcase)
如果我将“foo”矩阵变量放在其他位置,它会无动于衷吗?
例如,如果我以这种方式放置“foo”变量:
“/data;foo=bar/matrixvars/simple”
或者这样:
"/data/matrixvars/simple;foo=bar"
是一样的意思吗?
好的,现在这是处理通过单击链接生成的 HTTP 请求的 Controller 方法:
@RequestMapping(value="{path}/simple", method=RequestMethod.GET)
public @ResponseBody String withMatrixVariable(@PathVariable String path, @MatrixVariable String foo) {
return "Obtained matrix variable 'foo=" + foo + "' from path segment '" + path + "'";
}
此方法使用 URI 模板模式来访问 URI 的特定位置。
所以如果我的 URI 是 data/matrixvars/simple 并且因为我的整个类都被 @RequestMapping("/data") 注释注释并且我的 Controller 方法被注释by: @RequestMapping(value="{path}/simple", method=RequestMethod.GET) 是指下面的东西吗?
路径 URI 模板变量与第二个 URI 位置相关(在当前 URI 中是 matrixvars),因此此方法也可以处理 URI,如:
/spring-mvc-showcase/data/SOMETHING/simple
是吗?
非常感谢
安德里亚
最佳答案
答案:
当我点击 [ /data/matrixvars;foo=bar/simple
] 链接时调用的 URI 是什么?
/data/matrixvars/simple
;实际矩阵变量从 URI 中“消失”,因为矩阵变量被视为 URI 的可选组件。如果我将“foo”矩阵变量放在其他位置,它会无动于衷吗?
...所以这个方法也可以像处理 URI 一样 /spring-mvc-showcase/data/SOMETHING/simple
foo
MatrixVariable 支持 /spring-mvc-showcase/data/SOMETHING;foo=bar/simple
关于java - Spring 3.2 中@MatrixVariable 注解的一些信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13869288/
我正在阅读《Spring MVC,初学者指南》一书。在一节中,它建议使用矩阵变量来传递高价和低价。在他们的示例中,声明指定字符串列表作为第二个参数(见下文)。 @MatrixVariable(path
我正在阅读这篇文章 http://www.kscodes.com/spring-mvc/spring-mvc-matrix-variable-example/一个优点是您可以使用变量类型 Map对于矩
我使用 Spring 3.2.6 来通过基本示例来学习 @MatrixVariable 功能。 我已经编写了此方法来从 URI 获取矩阵变量: @RequestMapping(value="/matr
今天我正在研究可从 STS 仪表板下载的 Spring MVC 展示 我对Spring 3.2版本引入的新注解@MatrixVariable和URI路径中Matrix变量的使用有些疑惑。 在我的 ho
升级到Spring Security 4.2.4之后,我发现StrictHttpFirewall现在是默认设置。 不幸的是,由于“;”,它不能与Spring MVC @MatrixVariable一起
我是一名优秀的程序员,十分优秀!