我正在JSP中创建一个登录页面。我有一个index.jsp
页面,其中存在表单和一些javascript scriplets。在check1.jsp
文件
我的问题是在输入用户名和密码后,当我按下登录按钮时,我已将表单链接到check1.jsp
,如果用户名和密码匹配且存在,则重定向到welcome.jsp
,但如果用户名是不存在或密码不匹配我必须回到index.jsp
在框下方显示一条小信息,用户名不存在或密码不匹配,目前我只是重定向到{ {1}}。
如何在同一index.jsp
页面的登录框下方显示相应的小消息?
答案 0 :(得分:2)
您可以在此处使用session
对象:
在check1.jsp
:
if (loginSuccess) {
//redirect to welcome.jsp
}
else {
session.setAttribute("error", "Username or Password is incorrect");
//redirect to index.jsp
}
在index.jsp
:
String msg = session.getAttribute("error");
if (msg != null) {
%><p style="color:red"><%= msg %></p><%
}
EL和JSTL还有其他更简单的方法,但它只是一个起点。
答案 1 :(得分:1)
您不应该重定向到index.jsp,而是在这种情况下转发到index.jsp。将消息存储在某个请求属性中,转发到index.jsp,并显示消息(如果它存在于请求属性中)。
您应该使用MVC框架,以便始终使您的URL指向使用Java实现的操作(控制器),使这些操作调用业务逻辑(此处,记录用户)并将这些操作转发或重定向到适当的视图(index.jsp或welcome.jsp)。