Jor*_*geO 3 regex spring jstl url-parsing
我想基于JSP上的URL请求显示特定消息.
请求URL可以是:
/app/cars/{id}
Run Code Online (Sandbox Code Playgroud)
要么
/app/people/{id}
Run Code Online (Sandbox Code Playgroud)
在我的messages.properties身上我得到了:
events.action.cars=My car {0} event
events.action.people=My person {1} event
Run Code Online (Sandbox Code Playgroud)
最后,在我的JSP页面上,我想要以下代码:
<spring:message code="events.${element.cause}.${?????}"
arguments="${element.param['0']},${element.param['1']}"/>
Run Code Online (Sandbox Code Playgroud)
我需要帮助找出我可以使用哪个表达式来解析请求URL并获取ID之前的单词.
您可以在JSTL中访问请求URI(实际上是:EL),如下所示:
${pageContext.request.requestURI}
Run Code Online (Sandbox Code Playgroud)
(因此返回HttpServletRequest#getRequestURI())
然后,为了确定它,你将不得不使用JSTL函数taglib进行一些循环.它提供了几个字符串操作方法,如split(),indexOf(),substringAfter()等,没有,没有人支持正则表达式.只是解析它.
开球示例:
<c:set var="pathinfo" value="${fn:split(pageContext.request.requestURI, '/')}" />
<c:set var="id" value="${pathinfo[pathinfo.length - 1]}" />
Run Code Online (Sandbox Code Playgroud)
并用它作为${id}.
| 归档时间: |
|
| 查看次数: |
9230 次 |
| 最近记录: |