一、概述
在这个简短的教程中,我们将阐明如何在Thymeleaf 视图中获取URL 属性。
2. 如何获取URL 参数属性
使用两个特殊的Thymleaf 对象之一,可以在Thymleaf 视图中轻松访问URL 属性或我们所说的请求参数。第一种方式是使用param
对象,第二种方式是使用request
对象。
出于演示目的,让我们考虑一个包含一个参数query
的URL:
https://baeldung.com/search?query=Baeldung
2.1。使用param
对象
首先,让我们看看如何使用param
对象访问URL 属性“query”:
<div th:if="${param.query != null}"> <p th:text="${param.query }"></p> </div>
在上面的例子中,如果参数“query”不为空,“query”的值就会显示出来。另外,我们应该注意URL 属性可以是多值的。让我们看一个带有多值属性的示例URL:
https://baeldung.com/search?query=Bealdung&query=Thymleaf
在这种情况下,我们可以使用括号语法分别访问这些值:
<div th:if="${param.query != null}"> <p th:text="${param.query[0] + ' ' + param.query[1]}" th:unless="${param.query == null}"></p> </div>
2.2.使用request
对象
接下来,我们来看第二种访问URL属性的方式。我们可以使用特殊的#request 对象,它使您可以直接访问javax.servlet.http.HttpServletRequest
对象,它将request
分解为已解析的元素,例如查询属性和标头。
让我们看看如何在Thymleaf 视图中使用#request
对象:
<div th:if="${#request.getParameter('query') != null}"> <p th:text="${#request.getParameter('query')}" th:unless="${#request.getParameter('query') == null}"></p> </div>
在上面的示例中,我们使用了#request
对象提供的特殊函数getParameter('query')
。此方法以String
形式返回请求参数的值,如果参数不存在,则返回null
。
三、结论
在这篇快速文章中,我们解释了如何使用param
和#request
对像在Thymeleaf 视图中获取URL 属性。
0 评论