Struts 2会话管理和动态显示jsps
我正在使用 Struts 2 框架编写一个应用程序。它有一个包含用户名、密码和用户类型(例如管理员、主管、分析师等)的登录页面。
我想做两件事:
- 会话管理 - 注销、定时注销等。
- 根据用户类型向不同用户显示不同的页面。
任何对其中一个/两者的帮助都将受到高度赞赏。
I am writing an app using Struts 2 framework. It has a login page with username, password and usertype (ex. Administrator, supervisor, analyst etc.)
I want to do two things:
- Session management - logging out, timed logout etc.
- Display different pages to different users based on the user type.
Any help on either/both is highly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于第一部分,struts2 已经提供了开箱即用的会话管理,您所要做的就是使用会话感知并让 struts2 为您处理其余的工作。不过,登录和注销是您自己实现它们的首选方式你可以使用拦截器来检查用户是否登录等。
你的第二部分很像用户访问和权限管理,我相信Spring安全模块是实现这一目标的最佳方法
Spring 安全
for the first part struts2 already provides out of the box session management all you have to do is to use session aware and let struts2 handle the rest of the work for you.doing login and log out are your own preferred way to implement them, though you can use interceptor to check if the user is logged in or not etc.
your second part is much like a user access and right management and i believe spring security module is the best approach to achieve such goal
Spring Security
这是一种方法,但它还需要学习 Struts 之上的另一个框架。
在这种类型的应用程序中,我个人会实现一个 UserInfo 对象,以在会话中维护一个基于条件操作的帐户类型字段。例如,超级用户帐户只需包含一个带有 getter user.isSuperUser() 的布尔值。
为此,您可以将 UserInfo 对象粘贴到会话中,并使用 struts 标签来包含不同的页面,例如:
This is one approach, however it also requires learning another framework on top of Struts.
In this type of application I would personally implement a UserInfo object to maintain in session with an account type field for basing conditional operations on. For instance, a super user account would simply have a boolean with a getter user.isSuperUser().
In doing this you can stick the UserInfo object in session and use struts tags to include different pages, for example: