Thymeleaf 表达式对象:#session 和 ${session....}
Thymeleaf expression objects: #session and ${session....}
在 Thymeleaf 中有两种获取会话属性的方法:
${#session.getAttribute('attr')}
${session.attr}
session
"objects"两者有什么区别?有没有一种情况,一个可以工作,另一个不行?
#session
用法仅适用于 Web 上下文,即。它是直接访问与当前请求关联的 javax.servlet.http.HttpSession 对象的助手。 documentation 中明确说明了这一点。所以你在这里直接访问 Context 对象,而不是 thymeleaf 定义的变量。
$session
是访问会话属性的快捷方式。这不是上下文对象,而是作为变量添加到上下文中的映射,由 thymeleaf 显式添加。你可以找到相关资料here.
在 Thymeleaf 中有两种获取会话属性的方法:
${#session.getAttribute('attr')}
${session.attr}
session
"objects"两者有什么区别?有没有一种情况,一个可以工作,另一个不行?
#session
用法仅适用于 Web 上下文,即。它是直接访问与当前请求关联的 javax.servlet.http.HttpSession 对象的助手。 documentation 中明确说明了这一点。所以你在这里直接访问 Context 对象,而不是 thymeleaf 定义的变量。
$session
是访问会话属性的快捷方式。这不是上下文对象,而是作为变量添加到上下文中的映射,由 thymeleaf 显式添加。你可以找到相关资料here.