弹簧矩阵参数

时间:2015-01-22 09:37:31

标签: spring spring-mvc matrix parameters

我已将弹簧版本升级到4.1.4,现在想要使用Matrix参数。

我在下面添加了以支持配置文件中的矩阵参数:

<mvc:annotation-driven conversion-service="applicationConversionService" enable-matrix-variables="true"/>

在代码中,我在我的方法中访问它:

public ResponseEntity<String> transactions(@PathVariable("accountNumber") String accountNumber,
        @MatrixVariable(required = true,value="sinceDate") String sinceDate){....}

我的网址是:http://localhost:8080/spring_test/accounts/8293/transactions;sinceDate=2014-01-20;untilDate=2014-01-01;

但是我将sinceDate值设为null,使用@MatrixVariable声明。

请告知我是否遗漏了任何步骤?

谢谢, 玛纳斯

1 个答案:

答案 0 :(得分:0)

如果您有自己的AbstractHandlerMapping定义,则应指定其<beans:property name="removeSemicolonContent" value="false"/>

否则我建议您调试Spring代码并找出为removeSemicolonContent重置默认RequestMappingHandlerMapping的原因。

断点应位于UrlPathHelper#removeSemicolonContent

为了实现这一点,你应该在approriate pathVariable后面的URL中放置矩阵变量:

http://localhost:8080/spring_test/accounts/8293;sinceDate=2014-01-20;untilDate=‌​2014-01-01;/transactions