页面跳转有四种:jsp动作指令forward、html的超链接、重定向、response的响应跳转。
<jsp:forward>
上一个教程中有说明,请参考实现用户登陆跳转页面操作
重定向
格式:response.sendRedirect("要跳转的界面");
为了方便说明重定向和forward的不同,我们以实现用户登陆跳转页面操作中的代码为例。为了更好说明他们的不同,我们稍微更改下代码,表示当用户登陆失败的时候,跳转回login.jsp页面重新登陆。
代码如下(jsp:forward):
<body>
.......
<%
}
else{
%>
<jsp:forward page='login.jsp'/> <!-- 原代码中添加这句话,删除其他 -->
<%
System.out.print("hahahahahaha"); //在原代码中这里添加这句话
}
%>
</body>
运行login.jsp,然后我们观察地址栏:
随便输入姓名密码,再次观察:
而且我们发现,控制台没有输出打印“hahahahahaha”.
现在我们将代码更改成重定向:
<body>
.......
<%
}
else{
response.sendRedirect("login.jsp");
System.out.print("hahahahahaha");
}
%>
</body>
运行login,观察地址栏,输入数据,再次观察。发现地址栏显示的都是: