加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – 在JSTL中解析请求URL

发布时间:2020-12-14 05:36:19 所属栏目:百科 来源:网络整理
导读:我想基于JSP上的URL请求显示特定消息. 请求URL可以是: /app/cars/{id} 要么 /app/people/{id} 在我的messages.properties上,我得到了: events.action.cars=My car {0} eventevents.action.people=My person {1} event 最后,在我的JSP页面上,我想要以下代码
我想基于JSP上的URL请求显示特定消息.

请求URL可以是:

/app/cars/{id}

要么

/app/people/{id}

在我的messages.properties上,我得到了:

events.action.cars=My car {0} event
events.action.people=My person {1} event

最后,在我的JSP页面上,我想要以下代码:

<spring:message code="events.${element.cause}.${?????}"
                arguments="${element.param['0']},${element.param['1']}"/>

我需要帮助找出我可以使用哪个表达式来解析请求URL并获取ID之前的单词.

解决方法

您可以在JSTL中访问请求URI(实际上是:EL),如下所示:

${pageContext.request.requestURI}

(因此返回HttpServletRequest#getRequestURI())

然后,为了确定它,你必须使用JSTL functions taglib进行一些循环.它提供了几种字符串操作方法,如split(),indexOf(),substringAfter()等.不,没有人支持正则表达式.只是解析它.

开球示例:

<c:set var="pathinfo" value="${fn:split(pageContext.request.requestURI,'/')}" />
<c:set var="id" value="${pathinfo[pathinfo.length - 1]}" />

并将其用作${id}.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读