如何在Facelets页面中访问会话属性

如何在Facelets页面中访问会话属性,第1张

如何在Facelets页面中访问会话属性

您已将登录用户存储为名称为“ user”的会话属性

因此它在EL中可用如下:

#{user}

您可以只使用

empty
EL中的关键字来检查其是否存在(即是否已登录),并且可以使用JSF组件的
rendered
属性来指示是否生成HTML输出。

<h:panelGroup rendered="#{not empty user}">    <p>Welcome #{user}, you have been logged in!</p></h:panelGroup>

在隐藏表列的特定情况下,只需按以下方式使用它:

<p:column rendered="#{not empty user}">    ...</p:column>

存储会话属性的一种更好的方法是使用

ExternalContext#getSessionMap()
。这样,您的代码就不会有臭味了
javax.servlet.*

FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("user", username);

具体问题 无关 ,为什么要下面检查?

if (username.equals(getUsername_db()) && password.equals(getPassword_db())) {

您为什么不只使用

SELECt ... FROM user WHERe username=? ANDpassword=?
SQL?还是您不信任数据库返回正确的行?



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5428512.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存