我目前正在使用JSP / Java Servlets创建一个DVD浏览系统,并且无法找到一种方法来使我的登录页面更有效率。
我当前的登录系统执行此操作: 当用户提交正确的电子邮件/密码组合时,servlet会检查组合是否正确并将其重定向到大厅页面。如果密码错误,它们将被发送到/retry.jsp页面,该页面基本上是登录页面的副本,并带有额外的
,表明密码错误。
我认识到这不是最好的方法,但有没有一种实现可靠登录页面的替代方法?
修改 我找到了解决问题的方法,尽管可能不是最好的。如果使用了错误的用户名/密码组合,我使用会话变量来保存值“badlogin”。如果此会话变量存在,则会显示“错误密码”消息。对此有何评论?
答案 0 :(得分:4)
我没有使用过JSP,但在我使用过的大多数Web应用程序框架中,可以使用变量在模板中切换和显示错误消息。您对两个视图使用相同的页面,但是当显示失败的尝试时,会插入一个带有相应消息的额外div。
答案 1 :(得分:0)
您可以让servlet验证密码:
例如:
在登录页面jsp:
<%
if(request.getAttribute("passwordError")!=null){
out.print(request.getAttribute("passwordError");
}
%>
In the Servlet
if(request.getParameter("password")!=null&&request.getParameter("password").equals("correctPassword"){
// Redirect to Lobby Page
}
else{
request.setAttribute("passwordError", "Incorrect Password");
// Send back to login page
}
这将在登录页面上显示密码错误,避免页面重复和使用会话的需要。
希望这有帮助。
托拜厄斯。