Spring MVC从3.0开始支持REST,而主要就是通过@PathVariable来处理请求参数和路径的映射。
由于考虑到SEO的缘故,很多人喜欢把新闻的名称作为路径中的一部分去处理,这时候中文的名称就会遇到问题,没办法映射,这个是因为编码问题,只要到TOMCAT/conf下找到server.xml,添加URIEncoding="UTF-8"进行URL编码设置就可以解决中文问题。
另外经常遇到路径中有点".",而点是特殊字符,比如.html, .do等等,所以Spring MVC默认是把点后面的信息当作文件后缀,这时候我们就要修改这个默认值。
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
<property name="interceptors" ref="localeChangeInterceptor"/>
<property name="useDefaultSuffixPattern" value="false" /> </bean>
另外,这时候如果只设置这个,请求可以传递到对于的controller,但传过去的数据会有问题,只会传最后一个点前面的数据,除非你在最后加上“/”,比如/news/测试.点/ 这样就会把“测试.点”当作整体,不然只会得到“测试”。这时候我们可以这样设置
@RequestMapping("/news/{title:.*}")这样就一切ok啦。
分享到:
相关推荐
@PathVariable和@RequestParam的区别
@RequestParam:获取的是请求参数,一般是url问号后面的参数值@PathVariable:获取的是请求路径中参数的值使用@RequestParam时
SpringMVC@RequestMapping(重点)@RequestParam@PathVariable示例
获取Spring中@PathVariable注解里带点的完整参数.doc
主要介绍了SpringMVC中使用@PathVariable绑定路由中的数组的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
NULL 博文链接:https://snowolf.iteye.com/blog/1628861
本文主要介绍了spring mvc中的@PathVariable获得请求url中的动态参数的代码。具有很好的参考价值,下面跟着小编一起来看下吧
2、配置步骤: 1)引入架包;... spring-webmvc-2.5.6.jar不支持@PathVariable注解,参数必须采用传统方式的?传递;3以上版本就支持@PathVariable注解,允许的话,建议采用SpringMVC4,增加了一些新特性 ;
QBit 是一个 Java 微服务库。是一个 Reactive 编程库用于构建微服务,包括 JSON, HTTP, WebSocket 和 REST ... public int add(@PathVariable int a, @PathVariable int b) {... } 标签:微服务框架
springmvc2.5.6实现webservice 接口 带参数设置 ... 2、配置步骤: 1)引入JAR包; 2)写controller类 ... 3)写application-yg-...3以上版本就支持@PathVariable注解,允许的话,建议采用SpringMVC4,增加了一些新特性
2、配置步骤: 1)引入架包;... spring-webmvc-2.5.6.jar不支持@PathVariable注解,参数必须采用传统方式的?传递;3以上版本就支持@PathVariable注解,允许的话,建议采用SpringMVC4,增加了一些新特性 ;
SpringCloud中关于Feign的常见问题总结,包括常用的请求注解、@PathVariable、FeignClient多参数的构造等
springmvc实现乱码的处理,以及不同于单个的RequestMapping的配置,通过PathVariable的方式
@JsonPropertyOrder , @JsonSerialize , @JsonSetter , @Lazy , @Order , @PathVariable , @Pointcut , @PostConstruct , @PostMapping , @PreDestroy , @Primary , @PropertySource , @Qualifier , @Repository , ...
前段时间项目中用到了REST风格来开发程序,但是当用POST、PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没有加任何注解),查看了提交方式为application/json, 而且服务器端通过request....
详细介绍了Spring Boot...1 @PathVariable 2 @RequestParam 3 @RequestBody 4 @Responsebody 六、 全局异常处理相关 1 @ControllerAdvice 2 @ExceptionHandler 七、 Spring Data JPA相关 1 @Entity 2 @Table 3 @Id ……
@RequestMapping(value = "/del/{id}", method = RequestMethod.GET) public void del(HttpServletRequest request, @PathVariable("id") Long id){ System.out.println(id); }
springmvc 参数绑定例子,@RequestParam @CookieValue @PathVariable @ModelAttribute
public String detail(@PathVariable("seckillId") Long seckillId, Model model){ if (seckillId == null){ return "redirect:/seckill/list"; } Seckill seckill = seckillService.getById(seckillId); if ...