十八、附录 A:表达式基本对象
某些对象和变量 Map 始终可以被调用。让我们看看他们:
Base objects
- #ctx :上下文对象。
org.thymeleaf.context.IContext
或org.thymeleaf.context.IWebContext
的实现取决于我们的环境(独立或网络)。
注意#vars
和#root
是同一对象的同义词,但建议使用#ctx
。
/*
* ======================================================================
* See javadoc API for class org.thymeleaf.context.IContext
* ======================================================================
*/
${#ctx.locale}
${#ctx.variableNames}
/*
* ======================================================================
* See javadoc API for class org.thymeleaf.context.IWebContext
* ======================================================================
*/
${#ctx.request}
${#ctx.response}
${#ctx.session}
${#ctx.servletContext}
- #locale :直接访问与当前请求关联的
java.util.Locale
。
${#locale}
请求/会话属性等的 Web 上下文名称空间。
在 Web 环境中使用 Thymeleaf 时,我们可以使用一系列快捷方式来访问请求参数,会话属性和应用程序属性:
请注意,这些不是* context 对象*,而是作为变量添加到上下文中的 Map,因此我们无需
#
即可访问它们。它们以某种方式充当* namespaces *。
- param :用于检索请求参数。
${param.foo}
是具有foo
请求参数值的String[]
,因此${param.foo[0]}
通常将用于获取第一个值。
/*
* ============================================================================
* See javadoc API for class org.thymeleaf.context.WebRequestParamsVariablesMap
* ============================================================================
*/
${param.foo} // Retrieves a String[] with the values of request parameter 'foo'
${param.size()}
${param.isEmpty()}
${param.containsKey('foo')}
...
- session :用于检索会话属性。
/*
* ======================================================================
* See javadoc API for class org.thymeleaf.context.WebSessionVariablesMap
* ======================================================================
*/
${session.foo} // Retrieves the session atttribute 'foo'
${session.size()}
${session.isEmpty()}
${session.containsKey('foo')}
...
- application :用于检索应用程序/ servlet 上下文属性。
/*
* =============================================================================
* See javadoc API for class org.thymeleaf.context.WebServletContextVariablesMap
* =============================================================================
*/
${application.foo} // Retrieves the ServletContext atttribute 'foo'
${application.size()}
${application.isEmpty()}
${application.containsKey('foo')}
...
请注意, 无需指定用于访问请求属性的名称空间 (与 request parameters 相对),因为所有请求属性都作为变量自动添加到上下文根目录中:
${myRequestAttribute}
Web 上下文对象
在 Web 环境中,还可以直接访问以下对象(请注意,这些是对象,而不是 Map/命名空间):
- #request :直接访问与当前请求关联的
javax.servlet.http.HttpServletRequest
对象。
${#request.getAttribute('foo')}
${#request.getParameter('foo')}
${#request.getContextPath()}
${#request.getRequestName()}
...
- #session :直接访问与当前请求关联的
javax.servlet.http.HttpSession
对象。
${#session.getAttribute('foo')}
${#session.id}
${#session.lastAccessedTime}
...
- #servletContext :直接访问与当前请求关联的
javax.servlet.ServletContext
对象。
${#servletContext.getAttribute('foo')}
${#servletContext.contextPath}
...
最新评论
Spring Cloud Alibaba 微服务架构实战 https://pan.baidu.com/s/1jF5voFRoeF0lYAzAPBWSbw?pwd=chqk
命令: nload
真是个良心站点哇,大公无私,爱了爱了
还可以直接搞一张映射表,存 uid | time | source_index, 第一次直接查对应的 time 选出前100, 第二次直接用 CompleteFuture 去分别用 source_in
干得漂亮,多个朋友堵条路
2021.2.2版本的不适用吧
现在还可以用么
激活码有用,感谢分享