JSP的内置对象在JSP页面中无须声明就可以直接使用,其内置对象常用的有Request,response,session,application,out,config,pageCOntext.今天我们要学习的主要是关于JSP内置对象Request.
request对象封装了客户端提交的数据信息,包括用户提交的信息以及客户端的一些信息.客户端可通过HTML表单或在网页地址后面使用参数的方法提交数据.再用request 对象的相关方法来获取提交各种数据. 不管是在JSP还是在HTML中,服务器端程序与客户端交互最常用的方法就是采用表单提交数据.使用Request对象的getParameter()方法可得到表单中相应数据项的值.
用户注册表单:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<script language="javascript">
function on_submit(){
//验证数据的合法性
//验证用户名是否输入
if(form1.username.value="")
{
alert("用户不能为空,请输入用户名!");
form1.username.focus();
return false;
}
//验证密码是否输入
if(form1.userpassword.value=="")
{
alert("用户名密码不能为空,请输入密码");
form1.userpassword.focus();
return false;
}
//验证用户确认密码是否输入
if(form1.reuserpassword.value=="")
{
alert("用户确认密码不能为空,请输入确认密码!");
form1.reuserpassword.focus();
return false;
}
//验证密码和确认密码是否一致
if(form1.userpassword.value !=form1.reuserpassword.value)
{
alert("密码与确认密码不同!");
form1.userpassword.focus();
return false;
}
//验证E-mail是否合法
if(form1.email.value.length!=0)
{
for(i=0;i<form1.email.value.length;i++)
{
if(form1.email.value.vharAt(i)=="@") break;
if(i==form1.email.value.lenght)
{
alert("非法E-mail地址!");
form1.email.focus();
return false;
}
}
}
else
{
alert("请输入E-mail!");
form1.email.focus();
return false;
}
}
</script>
<!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>新用户注册</title>
</head>
<body>
<form method="POST" action="acceptUserRegist1.jsp" name="form1" onsubmit="return on_submit()">
新用户注册<br>
用户名(*):<input type="text" name ="userneme" size="20" ><br>
密 码:<input type="password" name="userpassword" size="20"><br>
再输入一次密码(*):<input type="password" name="reuserpassword" size=20><br>
性别:<input type="radio" value="男" checked name="sex" >男 <input type="radio" name="sex" value="女" >女 <br>
出生年月:<input name="year" size="4" maxlength=4>年
<select name="month">
<option value="1" selected>1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value=""4 >4</option>
<option value=""5 >5</option>
<option value=""6 >6</option>
<option value="7" >7</option>
<option value="8" >8</option>
<option value=""8 >8</option>
<option value="9" >9</option>
<option value="10" >10</option>
<option value="11" >11</option>
<option value="12" >12</option>
</select> 月
<input type="text" name="day" size="3" maxlength=4>日<br>
电子邮箱(*):<input type="text" name="E-mail" maxlength=28><br>
家庭住址:<input type="text" name="address" size="20"><br>
<input type="submit" value="提交" name="B1" >
<input type="reset" value="全部重写" name="B2"><br>
</body>
</html>
用户提交后的数据代码acceptUserRegist1.jsp:
<%@ 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">
<%!
public String codeToString(String str)
{
//处理中文字符的函数
String s=str;
try
{
byte tempB[]=s.getBytes("ISO-8859-1");
s=new String(tempB);
return s ;
}
catch(Exception e)
{
return s;
}
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>接收新用户注册</title>
</head>
<body>
这是新用户注册所提交的数据:
<br>
用户名:<%=codeToString(request.getParameter("username")) %><br>
密码:<%=codeToString(request.getParameter("userpassword")) %> <br>
性别:<%=codeToString(request.getParameter("sex")) %><br>
出生年月:<%=codeToString(request.getParameter("year")+request.getParameter("month")+request.getParameter("day")) %><br>
电子邮箱:<%=codeToString(request.getParameter("E-mail")) %><br>
家庭地址:<%=codeToString(request.getParameter("address")) %><br>
</body>
</html>
JSP就是在HTML网页中加入java代码,其实这个实例我们在学习B/S的时候就是实现过,现在只不过是在HTML中多加入的了JAVA代码.我们学习的内容都不新的东西,只不过是把HTML和JAVA融合到一起了,
关于JSP内置对象request更多的方法,请参考示例:https://code.csdn.net/snippets/160293