举个简单的例子:
假设登陆页面(input.jsp)如下<%@ page language="java" contentType="text/html;charset=GBK"%>
<html>
<head>
<title>用户登录</title>
</head>
<body>
<form name="form1" method="post" action="control.jsp">
用户名:<input type="text" name="userName">
密码:<input type="password" name="pwd">
<input type="submit" value="登陆">
</form>
</body>
</html>处理页面(control.jsp)如下<%@ page language="java" contentType="text/html;charset=GBK"%>
<html>
<head>
<title>登陆处理页面</title>
</head>
<body>
<%
request.setCharacterEncoding("GBK");
String name=request.getParameter("userName");
String pwd=request.getParameter("pwd");
if(name.equals("sa")&&pwd.equals("sa")){
//response.sendRedirect("welcome.jsp");
request.getRequestDispatcher("welcome.jsp").forward(request,response);
}
%>
</body>
</html>action属性表示的是提交页面的地址这里是control.jsp,如果理解为重定向的话,那么就不能获取到request,control.jsp中的代码就没有意义了,但是测试后确实打开了welcome.jsp页面。但是如果理解为转发的话,为什么我浏览器地址栏最后显示的是control.jsp,而不是一开始的input.jsp呢?这里请注意,我说的是input.jsp和control.jsp两个页面之间的关系,不是control.jsp和welcome.jsp之间的关系,control.jsp和welcome.jsp之间经过测试,如果是重定向地址栏的确是welcome.jsp如果是转发的话地址栏就是control.jsp,希望哪位高手能够解释清楚~
假设登陆页面(input.jsp)如下<%@ page language="java" contentType="text/html;charset=GBK"%>
<html>
<head>
<title>用户登录</title>
</head>
<body>
<form name="form1" method="post" action="control.jsp">
用户名:<input type="text" name="userName">
密码:<input type="password" name="pwd">
<input type="submit" value="登陆">
</form>
</body>
</html>处理页面(control.jsp)如下<%@ page language="java" contentType="text/html;charset=GBK"%>
<html>
<head>
<title>登陆处理页面</title>
</head>
<body>
<%
request.setCharacterEncoding("GBK");
String name=request.getParameter("userName");
String pwd=request.getParameter("pwd");
if(name.equals("sa")&&pwd.equals("sa")){
//response.sendRedirect("welcome.jsp");
request.getRequestDispatcher("welcome.jsp").forward(request,response);
}
%>
</body>
</html>action属性表示的是提交页面的地址这里是control.jsp,如果理解为重定向的话,那么就不能获取到request,control.jsp中的代码就没有意义了,但是测试后确实打开了welcome.jsp页面。但是如果理解为转发的话,为什么我浏览器地址栏最后显示的是control.jsp,而不是一开始的input.jsp呢?这里请注意,我说的是input.jsp和control.jsp两个页面之间的关系,不是control.jsp和welcome.jsp之间的关系,control.jsp和welcome.jsp之间经过测试,如果是重定向地址栏的确是welcome.jsp如果是转发的话地址栏就是control.jsp,希望哪位高手能够解释清楚~
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货