1.问题:匹配上url中的反斜杠"/"(%2f)
在springmvc 里,我要匹配:
http://yourdomain.com/start/xx/xx/xx/end
@RequestMapping("/{start}/**/{end}") public String vv(@PathVariable("start") String start, @PathVariable("end") String end){ }
然而,我需要获得url中间的数据:
@RequestMapping("/{start}/{mid:.*}/{end}")
但是却无法捕获。
也就是说,变量中不能带有"/"的。
2.我的解决方案
1.'/'有限
如:
/123/456/789/1011/1213
/123/456/789/1011
/123/456/789
@RequestMapping(value={"/{start}/{mid1}/{mid2}/{mid3}/{end}", "/{start}/{mid1.*}{mid2}/{mid3}/{end}", "/{start}/{mid1.*}{mid2}{mid3}/{end}"} ) public String vv(@PathVariable("start") String start, @PathVariable("mid1") String mid1, @PathVariable("mid2") String mid2, @PathVariable("mid3") String mid3, @PathVariable("end") String end){ if(StringUtils.isNotBlank(mid2){ mid1 +="/"+mid2; } if(StringUtils.isNotBlank(mid3){ mid1 +="/"+mid3; } //可以使用mid1了 ...... }
{mid1:.*} 是最大匹配
url数组里的变量必须相等
2."/" 数量可能非常多
如:/search/123/4/5/6/7/4/5/6/5/4/4/5/5/67/ok
只能使用 @RequestMapping("/search/**/{end}") 来拦截住请求
然后代码里通过:
request.getServletPath()
然后通过split("/")来拆分后取对应的内容拼接。
3.其它人的解决方案
http://stackoverflow.com/questions/2334787/how-to-match-a-spring-requestmapping-having-a-pathvariable-containing?rq=1
http://stackoverflow.com/questions/3686808/spring-3-requestmapping-get-path-value
http://stackoverflow.com/questions/7841770/optional-path-variables-in-spring-mvc-requestmapping-uritemplate
相关推荐
* 4)、来看请求地址和@RequestMapping标注的哪个匹配,来找到到底使用那个类的哪个方法来处理 * 5)、前端控制器找到了目标处理器类和目标方法,直接利用返回执行目标方法; * 6)、方法执行完成以后会有一个...
通配符的匹配很全面,但无法找到元素contextannotation-config【系统环境】windows 10【操作内容】springMVC 4/ Inte
代码用的别人的,框架自己搭建,可以运行通过 使用 eclipse oxygen maven 搭建 springmvc mybatis druid 的增删改框架代码
SpringMVC常用注解,返回方式,路径匹配形式.rar
整合了mybatis、spring、springMVC的开发框架。以及在如何在spring.xml spring-mvc.xml mybatis-spring.xml文件的配置方法。其中mybatis-generator的生产方法、路径。在如下的URL链接中:...
RequestParam 注解、RequestHeader 注解、CookieValue 注解、使用POJO作为参数(属性与页面自动匹配及级联)、使用Servlet原生API作为参数、处理模型数据(ModelAndView、Map、SessionAttributes 注解)、...
实现了shiro安全登录,包括密码加密匹配和登录失败次数限制的功能
在SpringMVC中 所有的请求都由dispatcherServlet处理(url-pattern配置的是/),当配置文件中有对静态资源的处理 <mvc:default-servlet-handler/> 时候 ,先匹配 welcome-file-list 中的文件,依次查找,找到了就 ...
jdk1.8以上的版本需要更高版本的spring的jar包,不然会报意想不到的错误,找不到相应的类,及监听器
1.SpringMVC的简介 2.SpringMVC的案例 1./所匹配的请求可以是/login或.html或.js或.css方式的请求路径,代表接受除了.js
springMVC+mybatis+自动摘要+ansj中文分词+关键词匹配规则等等
1.配置web.xml的servlet 匹配/WEB-INF/<servlet-name>-servlet.xml (会找到这样的一个文件) 2.找到相应的spring mvc配置文件 3.配置spring mvc文件 (springmvc-servlet.xml文件) (1)扫描基包下的所有注解类 ...
本项目是用的spring springMVC myBatis框架,前段没用框架,只写了简单的页面效果,做增删查改 这是我系统学习所得,希望能对你有所帮助 项目部署: 1;导包,就是web-inf下lib,让后把这些选中,单击右键build ...
SpringMVC4.0+MYBATIS3.0增删改查 用的是oracle数据库 数据看配置文件自己配置一下 表名SM_USER 列ID,NAME.PASSWORD 一定要匹配正确 否则报错
几乎是网上 能找到的 日志脱敏的所有实现 1、基于正则表达式的 日志脱敏实现 ,扩展logback 、log4j 2、springmvc 返回报文脱敏。 3、基于注解方式的脱敏。 大家选择使用。
使用springmvc+mysql+mybatis搭建的博客登陆界面,可以从数据库中匹配账号密码。运用Tomcat作为服务器。运行前需要在本地mysql里建立一张user表。
SpringMVC请求参数接收 1 GET方法请求参数处理 2 表单参数 3 【非对象】- 非对象类型单个参数接收。 3 【对象】 - 对象类型参数接收。 4 【数组】 - 列表或者数组类型参数。 5 JSON参数 6 URL路径参数 6 文件上传 8 ...
整合Spring,SpringMVC,Mybatis框架所需要的jar包.方便使用
注意,此URL的域名,必须完全匹配企业应用设置项中的'可信域名',否则获取用户信息时会返回50001错误码。 可信域名设置不包含"http://",只需域名或IP即可。 OAuth2验证可以使用多种方式,此处使用注解方式。设计思路...
Shiro + Hibernate5 + Spring5 + SpringMVC5 的jar 的架包!