0 0

springmvc中的@MatrixVariable获取参数失败0

@RequestMapping(value = "/owners/{ownerId}/pets/{petId}", method = RequestMethod.GET)
    public void findPet(@MatrixVariable Map<String, String> matrixVars, @MatrixVariable(pathVar = "ownerId") Map<String, String> petMatrixVars) {
        System.out.println(matrixVars);
        System.out.println(petMatrixVars);
    }

 上面代码是spring文档中的例子,浏览器中输入:http://localhost:8080/owners/44/pets/55;q=22,33;s=23时,控制台输出:

{q=[22, 33], s=[23]}
{q=[22, 33], s=[23]}

 

但是当输入http://localhost:8080/owners/42;q=11;r=12/pets/55;q=22,33;s=23则findPet方法没有执行,难道spring文档有错误?还是少了什么配置?


问题补充:public void findPet(@MatrixVariable Map<String, String> matrixVars, @MatrixVariable(pathVar = "ownerId") Map<String, String> petMatrixVars)中的ownerId应该改为petId
 
2013年5月20日 16:50

2个答案 按时间排序 按投票排序

0 0

采纳的答案

估计是bug,已提交给springsource,具体分析请看
http://jinnianshilongnian.iteye.com/blog/1872760

2013年5月21日 14:19
0 0

少@PathVariable

public void findPet(@PathVariable(value = "ownerId") Integer ownerId , @PathVariable(value = "petId") Integer petId, @MatrixVariable Map<String, String> matrixVars, @MatrixVariable(pathVar = "ownerId") Map<String, String> petMatrixVars) { 
        System.out.println(matrixVars); 
        System.out.println(petMatrixVars); 
    } 

2013年5月20日 17:24

相关推荐

    SpringMVC的@InitBinder参数转换代码实例

    @InitBinder是一个SpringMVC框架中的注解,用于初始化WebDataBinder对象,WebDataBinder对象是SpringMVC中用于绑定请求参数到命令对象的关键对象。@InitBinder注解可以指定要绑定的参数,并注册自定义的编辑器,用于...

    springmvc之@RequestMapping的demo

    这个方法将从URL的查询参数中获取"name",并将其值插入到返回的字符串中。 5. **路径变量**:使用`@PathVariable`可以从URL路径中提取值,如: ```java @GetMapping("/user/{id}") public User getUser(@...

    详解SpringMVC注解@initbinder解决类型转换问题

    在使用 SpringMVC 框架时,经常会遇到表单中的日期字符串和 JavaBean 的 Date 类型的转换问题。 SpringMVC 默认不支持这个格式的转换,因此需要手动配置,自定义数据的绑定才能解决这个问题。在需要日期转换的 ...

    hibernate+spring+springmvc框架@注解详细搭建,详细注释,不懂的可以留言

    于是我花了几天时间搭建出来的hibernate+springmvc的框架,这个框架去除hibernate配置, 将配置全部整合到spring中,开发中使用注解开发即可,很方便,以后我还会持续更新的。 这是一个maven项目,放在eclipse中,改...

    hibernate+spring+springmvc框架 @注解开发 详细配置注释/及hibernate的HQL/QBC/SQL查询代码使用及注释

    于是我花了几天时间搭建出来的hibernate+springmvc的框架,这个框架去除hibernate配置, 将配置全部整合到spring中,开发中使用注解开发即可,很方便,以后我还会持续更新的。 这是一个maven项目,放在eclipse中,改...

    springmvc的@Validated注解使用

    @SpringMVC框架中,@Validated注解是一个非常重要的验证工具,通过这个注解,我们可以实现对Bean对象的验证,从而确保数据的正确性。本文将详细介绍@SpringMVC的@Validated注解的使用方法,并提供实践示例代码。 一...

    2021全新SpringMVC教程

    15_SpringMVC_控制器中有多个方法对应同一个请求的情况.mp4 17_SpringMVC_@RequestMapping注解的value属性.mp4 20_SpringMVC_测试form表单是否能够发送put和delete请求方式的请求.mp4 22_SpringMVC_@RequestMapping...

    SpringMVC使用WebSocket

    使用SpringMVC结合WebSocket实现服务器与客户端双向沟通,程序很简单,只是为了演示配置(hello world),IntelliJ Maven项目,部署好以后测试地址 http://localhost:8080/test

    SpringMVC入门很简单之URL映射规则

    status=active`,可以使用`@MatrixVariable`获取`status`的值。 - `@RequestBody`和`@ResponseBody`:前者用于将HTTP请求体的数据转换为方法参数,后者用于将方法返回的对象直接写入HTTP响应体。 在实际开发中,...

    springmvc后台基于@ModelAttribute获取表单提交的数据

    主要介绍了springmvc后台基于@ModelAttribute获取表单提交的数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Springmvc获取URL

    java SpringMVC获取URLjava SpringMVC获取URLjava SpringMVC获取URLjava SpringMVC获取URL

    快速解决SpringMVC @RequestBody 用map接收请求参数的问题

    在 SpringMVC 中,使用 @RequestBody 注解可以将请求体中的数据转换为 Java 对象,但是在使用 map 接收请求参数时,经常会遇到一些问题。本文将讨论如何快速解决 SpringMVC @RequestBody 用map接收请求参数的问题。 ...

    尚硅谷SpringMVC部分全套教学文档笔记

    - @ModelAttribute注解常用于将请求参数映射到Model对象,或者在方法中获取Model中的数据。 - 它可以用于方法参数,表示将Model中的对象绑定到方法参数,或者用于方法返回值,将结果对象添加到Model中。 5. **...

    基于SpringMVC的用户三次登录失败案例

    基于SpringMVC的用户三次登录失败案例,用户连续三次登录失败后,只有等24小时之后才可以登录。本案例为了演示,设置时间为2分钟,可以自行修改...

    解决SpringMVC接收不到ajaxPOST参数的问题

    在SpringMVC中,如果使用@RequestBody注解接收参数时,需要将contentType设置为"application/json;charset=utf-8",否则将无法接收到参数值。例如: ```java @PostMapping("/method2") @ResponseBody @...

    springmvc所有方法url映射获取

    通过重写dispatcherservlet的一个doservice方法把springmvc的url对应方法打印出来。 所需要做的是: 1,使用本文件作为原先springmvc的xml文件的dispatcherservlet。 2,启动项目,随意发送一个请求,可以在控制台...

    看透springMvc源代码分析与实践.pdf

    8. **RESTful支持**:SpringMVC通过@RequestMapping的pathVariable、MatrixVariable等功能支持RESTful风格的URL设计,使得API更加简洁、直观。 9. **上传下载处理**:SpringMVC提供便捷的文件上传和下载支持,通过...

    springmvc数据验证

    在Spring MVC中,只需在控制器方法的参数上添加`@Valid`注解,Spring就会自动调用对应的验证器进行验证。如果验证失败,Spring会将错误信息自动绑定到模型中,供视图层展示。 2. **自定义Validator**:对于更复杂...

Global site tag (gtag.js) - Google Analytics