表单处理的两种方法:
get方法:将请求的编码信息添加在网址后面,网址与编码信息通过"?"号分隔。它是浏览器默认传递参数的方法,一些敏感信息,如密码等建议不使用GET方法。用get时,传输数据的大小有限制 (注意不是参数的个数有限制),最大为1024字节。
post方法:一些敏感信息,如密码等我们可以通过POST方法传递,POST提交数据是隐式的。
读取表单数据
1.getParameter(): 使用 request.getParameter() 方法来获取表单参数的值。
eg:
提交表单:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<form action="Parameter1.jsp"method="post">
您所在省份:
<select name="province">
<option value="1">四川</option>
<option value="2">重庆</option>
<option value="3">北京</option>
<option value="4">其他</option>
</select>
<br>
您的姓名:
<input type="radio"name="sex"value="male">男
<input type="radio"name="sex"value="female">女
<br>
<input type="submit"value="提交">
</form>
</body>
</html>
读取表单:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<%
String myProvince=request.getParameter("province");
String mySex=request.getParameter("sex");
%>
您的省份是:<%=myProvince %><br>
您的性别是:<%=mySex %>
</body>
</html>
运行结果:
2.getParameterValues(): 获得如checkbox类(名字相同,但值有多个)的数据。 接收数组变量 ,如checkbox类型
eg:
提交表单:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<form action="getValues.jsp">
选择您生活的城市:<br>
<input type="checkbox"name="cities"value="成都"/>成都
<input type="checkbox"name="cities"value="重庆"/>重庆
<input type="checkbox"name="cities"value="西安"/>西安
<input type="checkbox"name="cities"value="杭州"/>杭州
<input type="submit"value="提交"/>
</form>
</body>
</html>
读取表单:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
您生活的城市:<br>
<%
String lifeCities[]=request.getParameterValues("cities");
for(int i=0;i<lifeCities.length;i++){
out.println(lifeCities[i]+"<br>");
}
%>
</body>
</html>
运行结果:
3.getParameterNames():该方法可以取得所有变量的名称,该方法返回一个Emumeration
eg: