gpt4 book ai didi

java - Spring PetClinic 非常url的编码

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:11:16 24 4
gpt4 key购买 nike

我正在实现给出的 Spring Pet Clinic 示例项目 here

实现 here

在主页中,所有 url 都由 <spring:url /> 编码标签。我只是想确认对链接进行编码是否是一个好的编程实践,即使是简单的导航 url 通过 spring:url 标记还是出于特定原因完成?

最佳答案

是的,这是一个很好的做法。该标记是一个 Spring JSP 标记,用于创建具有 JSTL 增强功能的 URL c:url . <c:url>标记用于创建 url,它在客户端关闭 cookie 的情况下很有用,并且您将需要重写将从 jsp 页面返回的 URL。如果需要提供持久 session ,重写的 URL 将对 session ID 进行编码。

例如,您的网址将显示为:

<c:url value="a.jsp">

/context/a.jsp // when cookies is enabled
/context/a.jsp;jsessionid=B01F432.... // when cookie is disabled

这样,servlet 容器就可以跟踪用户请求。另一件重要的事情是 c:url将为上下文根添加前缀,因此您无需在任何地方都编写根上下文前缀。

就像我说的,<spring:url>包含一些对 JSTL 的增强,例如编码的 URI 模板变量。

<spring:url value="/url/path/{variableName}">
<spring:param name="variableName" value="more than JSTL c:url" />
</spring:url>

结果在:/currentApplicationContext/url/path/more%20than%20JSTL%20c%3Aurl

在此处查看更多详细信息:http://docs.spring.io/spring/docs/3.1.4.RELEASE/javadoc-api/org/springframework/web/servlet/tags/UrlTag.html

关于java - Spring PetClinic <spring :url . ...../> 非常url的编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20157934/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com