springmvc MatrixVariable 注解的学习

2017-02-21  本文已影响0人  缓慢移动的蜗牛

spring的版本 4.2.4.RELEASE

矩阵变量###

在路径段落中携带键值对

/**
 *  需要开启  <mvc:annotation-driven enable-matrix-variables="true"/>
 *  请求;/test/123;q=123/h/456;q=456
 * @param q1
 * @param q2
 */
@RequestMapping(path = "/test/{ownerId}/h/{petId}")
public void findPet(@MatrixVariable(name = "q", pathVar = "ownerId") int q1, @MatrixVariable(name = "q", pathVar = "petId") int q2) {
    System.out.println(q1+"---"+q2);
}
/**
 * 更复杂的示例
 * 请求:/test2/123;q=123;r=222;m=4/h/456;q=456;p=234
 * 结果:m1   {"q":["123","456"],"r":["222"],"m":["4"],"p":["234"]}
 *            m2   {"q":["456"],"p":["234"]}
 *
 * 需要使用阿里巴巴的fastjson
 *  <dependency>
         <groupId>com.alibaba</groupId>
         <artifactId>fastjson</artifactId>
         <version>1.2.3</version>
   </dependency>
 * @param m1
 * @param m2
 */
@RequestMapping(path = "/test2/{ownerId}/h/{petId}")
public void findPet2(@MatrixVariable Map<String, String> m1, @MatrixVariable(pathVar = "petId") Map<String, String> m2) {
    System.out.println(JSON.toJSONString(m1));
    System.out.println(JSON.toJSONString(m2));
}
上一篇 下一篇

猜你喜欢

热点阅读