这个是fourth.jsp<%@page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<form action="Fifth.jsp"method=post>
用户名:
<input type=text name="name">
密码:
<input type=password name="password">
<input type=submit value="登陆">
<input type=reset value="重置">
</body>
</html>这个是Fifth.jsp
<%@page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<%
String name=request.getParameter("name");
String password=request.getParameter("password");
if(name.equals("david")&&password.equals("123")){
%>
<jsp:forward page="./Sixth.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%}else{%>
<jsp:forward page="./Fourth.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%}%>
</body>
</html>这个是Sixth.jsp
<%@page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<%=request.getParameter("name")%>
密码正确,登陆成功
</body>
</html>请问<jsp:param name="user" value="<%=name%>">
我是jsp菜鸟,请问第一个页面是不是由form action="Fifth.jsp"method=post一句自动将name和password两个参数传递到Fifth.jsp了?
如果传递过去了,那么在Fifth.jsp中的forword参数传递中传递到Sixth.jsp的是user,为什么<%=request.getParameter("name")%>中不是<%=request.getParameter("user")%>?Fifth.jsp只传递了user这个参数啊,name参数并没有传递,Sixth.jsp中的name参数名是哪来的?
而在Fourth.jsp中已经有一个name参数,为什么还得有Fifth.jsp中传递一个user过去呢?传递过去后又有什么用呢?
对于<jsp:param name="user" value="<%=name%>"/>传递参数问题我不是很清楚,望高手给我解释下,谢谢。
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<form action="Fifth.jsp"method=post>
用户名:
<input type=text name="name">
密码:
<input type=password name="password">
<input type=submit value="登陆">
<input type=reset value="重置">
</body>
</html>这个是Fifth.jsp
<%@page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<%
String name=request.getParameter("name");
String password=request.getParameter("password");
if(name.equals("david")&&password.equals("123")){
%>
<jsp:forward page="./Sixth.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%}else{%>
<jsp:forward page="./Fourth.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%}%>
</body>
</html>这个是Sixth.jsp
<%@page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>
jsp:forward实例
</title>
</head>
<body>
<%=request.getParameter("name")%>
密码正确,登陆成功
</body>
</html>请问<jsp:param name="user" value="<%=name%>">
我是jsp菜鸟,请问第一个页面是不是由form action="Fifth.jsp"method=post一句自动将name和password两个参数传递到Fifth.jsp了?
如果传递过去了,那么在Fifth.jsp中的forword参数传递中传递到Sixth.jsp的是user,为什么<%=request.getParameter("name")%>中不是<%=request.getParameter("user")%>?Fifth.jsp只传递了user这个参数啊,name参数并没有传递,Sixth.jsp中的name参数名是哪来的?
而在Fourth.jsp中已经有一个name参数,为什么还得有Fifth.jsp中传递一个user过去呢?传递过去后又有什么用呢?
对于<jsp:param name="user" value="<%=name%>"/>传递参数问题我不是很清楚,望高手给我解释下,谢谢。
name字符串存储了从request中取到的“name”属性<jsp:param name="user" value="<%=name%>"/>
这里又把name字符串放到了request中的“user”属性这时request里面的“name”属性和“user”属性都存储的是字符串name的值你也可以把request理解为集合
里面存储的是键值对
而你的代码中request的“name”属性和“user”属性都是表单name的值,是相同的,就是这样这样说楼主明白了没~
<jsp:forward page="./Sixth.jsp">之后的代码会执行吗,应该到这里就跳了吧.
<jsp:forward page="./Sixth.jsp?name=<%=name%>" />这样以get方法传过去.
这个标签搞懂就没的问题