Java 您如何识别和转发;“未登录”;用户返回登录页面?
我使用JSP、Servlet和JDBC(无框架)创建了一个web应用程序。我们有基于表单的身份验证安全性,用户必须首先登录。用户名和密码在数据库中,与任何基于internet的web应用程序一样,用户名和密码由用户自己创建 我们使用了Java 您如何识别和转发;“未登录”;用户返回登录页面?,java,jsp,session,servlets,deployment-descriptor,Java,Jsp,Session,Servlets,Deployment Descriptor,我使用JSP、Servlet和JDBC(无框架)创建了一个web应用程序。我们有基于表单的身份验证安全性,用户必须首先登录。用户名和密码在数据库中,与任何基于internet的web应用程序一样,用户名和密码由用户自己创建 我们使用了Java会话来识别用户,并确定该用户是否已登录。我们所做的是在每个servlet页面和JSP页面中检查会话是否是新的,会话是否可用,如果有任何问题,我们将用户转发回登录页面。这可以保护直接访问URL的用户,如www.xxx.com/questions?idEmplo
Java会话
来识别用户,并确定该用户是否已登录。我们所做的是在每个servlet页面和JSP页面中检查会话是否是新的,会话是否可用,如果有任何问题,我们将用户转发回登录页面。这可以保护直接访问URL的用户,如www.xxx.com/questions?idEmployee=1
现在问题来了。我知道我们不必在每个页面中编写java代码来检查用户是否登录。我们可以用部署描述符做一些事情,对吗?因此,它可以自动检查内容并转发给用户
然而,我在谷歌上找到的答案都是关于将用户名和密码硬编码到部署描述符,所以这对我们来说毫无用处。那么,我们如何在不将用户名和密码硬编码到部署描述符的情况下解决这个问题呢?最好的解决方案是编写一个过滤器类(Servlet),避免重写每个JSP文件的代码 在filter类中,您可以验证会话。
- 选项1:按照其他人的建议,使用
过滤器
- 选项2:编写一个jsp来验证会话,并在需要时重定向用户。现在在重置需要有效会话的jsp时导入所述jsp