在spring MVC中,@PathVariable出现点号"."时导致路径参数截断获取不全的解决办法
2016-09-05 17:32
465 查看
问题:
在网站上上传资源文件后,需要异地进行下载。springMVC映射时,利用了@PathVariable在controller层来获取文件的名称。问题来了,获取的文件名称有多个“.”分隔符时,会丢失数据。比如获取xxx.jpg,结果是xxx.
原因:@PathVariable在获取值的时候对传入的值进行了截断。
解决办法:
1) 在请求地址后增加一个静态的字符段,这个段没有任何意义,可以为任意字符。
比如:xxx.jpg/kkkk
2) 在@RequestMapping的value中使用SpEL来表示,
@PathVariable("{filename:[a-zA-Z0-9\.]+}")
在网站上上传资源文件后,需要异地进行下载。springMVC映射时,利用了@PathVariable在controller层来获取文件的名称。问题来了,获取的文件名称有多个“.”分隔符时,会丢失数据。比如获取xxx.jpg,结果是xxx.
原因:@PathVariable在获取值的时候对传入的值进行了截断。
解决办法:
1) 在请求地址后增加一个静态的字符段,这个段没有任何意义,可以为任意字符。
比如:xxx.jpg/kkkk
2) 在@RequestMapping的value中使用SpEL来表示,
@PathVariable("{filename:[a-zA-Z0-9\.]+}")
相关文章推荐
- Spring Boot @PathVariable出现点号"."时导致路径参数截断获取不全的解决办法
- @PathVariable出现点号"."时导致路径参数截断获取不全的解决办法
- @PathVariable出现点号"."时导致路径参数截断获取不全的解决办法
- @PathVariable出现点号"."时导致路径参数截断获取不全的解决办法
- @PathVariable出现点号"."时导致路径参数截断获取不全的解决方法
- Restfull @PathVariable出现点号"."时导致路径参数截断获取不全
- @PathVariable出现点号.时导致路径参数截断获取不全的解决办法
- 路径参数@PathVariable出现点号"."时值遭截断问题
- input type="file" 选取文件路径时出现fakepath问题IE浏览器解决办法
- js获取文件上传路径(解决出现fakepath的问题)
- IE8上传文件时获取文件本地路径问题(C:\fakepath\……)的解决办法
- 一个div要呈现在另外一个div前面,解决绝对路径出现错位的办法。(获取控件的位置)
- c3p0连接池maxIdleTime小于mysql数据库interactive_timeout参数导致出现NewPooledConnection close Exception的解决办法
- LINUX系统调用sys_mkdir()中所得的pathname参数不是全路径,要将其转为全路径的解决办法。
- 风声无组件上传出现"无效的过程调用或参数instr"的解决办法
- 当打开Oracle Jdevelopler 11g时出现"Unable to create an instace of the jave virtual Machine Located at path"错时解决办法
- [置顶] jsp页面中用绝对路径${pageContext.request.contextPath}出现错误,解决办法
- spring mvc url 参数传递出现中文乱码解决办法
- IE8上传文件时获取文件本地路径问题(C:\fakepath\……)的解决办法
- 日常问题记录--JSP页面中通过<s:property value="#parameters.userName[0]>获取URL参数中文时为乱码的解决办法