今天作项目写后台,打算用 编程
/id;start=1;end=10 ide
的形式来传递参数,天然想到使用@MatrixVariable注解将参数绑定到控制器的方法参数上。可是请求一直失败。查资料,有人说配置文件启动MVC注解的地方得加入以下属性 函数
<annotation-driven enable-matrix-variables="true" /> url
但我用的是编程方式,未用配置文件。后来找到一个方法管用: spa
个人配置类RestServletContextConfiguration继承WebMvcConfigurerAdapter配置类 继承
覆盖它的configurePathMatch方法 rem
@Override
public void configurePathMatch(PathMatchConfigurer configurer){
UrlPathHelper urlPathHelper = new UrlPathHelper();
urlPathHelper.setRemoveSemicolonContent(false);
configurer.setUrlPathHelper(urlPathHelper);
} 文档
后就能够绑定矩阵参数了。看了一下文档,大概意思是因为removeSemicolonContent的属性为true,请求过来的url自动处理掉了分号带的内容,在上述函数中将属性设为false便可工做。
it