一、实验目的
练习JSP编程
二、实验相关技术
JSP编程开发技术
三、实验内容
编写registor.jsp,record.jsp,index.jsp,
分别完成录入用户信息、接收显示用户信息并用session存储新注册的用户名、提取新注册用户并显示。
registor.jsp中录入用户信息,综合使用表单的功能:
form标记(表单采用POST方法发送)
text:用户名、口令
radio按钮:性别
select:出生年月、所在地 其中会使用到option标记
checkbox:选择兴趣
textarea:自我介绍
按钮:提交和重新输入
处理registor.jsp提交Action的jsp为record.jsp, record.jsp接收text、textarea、radio、select的数据,并显示出来(注意汉字问题)。
record.jsp中用session存储新注册的用户名。
record.jsp包含返回首页index.jsp的超链接
index.jsp中用session提取新注册用户并显示
四、实验步骤和结果
1、项目初始页面
输入相应信息后
点击注册按钮后
点击链接返回首页后
五、完整源代码
注:只粘贴了body部分
registor.jsp
<body>
<h3>
欢迎登陆!<br>
</h3>
<hr/>
<form action="record.jsp" method="post" target="_blank">
请输入您的用户名:<input name="username" type="text"/><br/>
请选择您的性别:
<input name="sex" type="radio" value="女" checked>女
<input name="sex" type="radio" value="男">男
<br/>
请选择您的出生年月日:
<select name="year">
<%
for(int i=1975; i<=2022; i++){ %>
<option value=" <%=i%> "> <%=i%> </option>
<%}%>
</select>年
<select name="month">
<%
for(int i=1; i<=12; i++){ %>
<option value=" <%=i%> "> <%=i%> </option>
<%}%>
</select>月
<select name="day">
<%
for(int i=1; i<=30; i++){ %>
<option value=" <%=i%> "> <%=i%> </option>
<%}%>
</select>日
<br/>
请选择您的所在地:
<select name="located">
<option value="北京">北京</option>
<option value="天津">天津</option>
<option value="济南">济南</option>
<option value="长沙">长沙</option>
<option value="广州">广州</option>
<option value="上海">上海</option>
<option value="成都">成都</option>
<option value="武汉">武汉</option>
</select>
<br/>
请选择您的爱好:
<input name="hobby" type="checkbox" value="编程">编程
<input name="hobby" type="checkbox" value="网球">网球
<input name="hobby" type="checkbox" value="乒乓球">乒乓球
<input name="hobby" type="checkbox" value="跑步">跑步
<input name="hobby" type="checkbox" value="阅读">阅读
<input name="hobby" type="checkbox" value="喝酒">喝酒
<br/>
请写下您的自我介绍:
<textarea name="introduction" placeholder="说点什么..." rows="5" cols="25"></textarea>
<br/>
<input type="submit" value=" 点击注册 ">
</form>
</body>
record.jsp
<body>
<h4>
提交时间:
<%
Date date = new Date();
out.print(date.toString());
%>
</h4>
<ul>
<li>
<%
String username = new String((request.getParameter("username")).getBytes("ISO-8859-1"),"UTF-8");//解决中文乱码
out.println("用户姓名:" + username);
//session存储用户名
session.setAttribute("username",username);
%>
</li>
<li>
<%
String sex = new String((request.getParameter("sex")).getBytes("ISO-8859-1"),"UTF-8");
out.println("用户性别:" + sex);
%>
</li>
<li>
<%
String[] birthday = new String[3];
birthday[0] = request.getParameter("year");
birthday[1] = request.getParameter("month");
birthday[2] = request.getParameter("day");
out.println("用户出生在:" + birthday[0] + "年" + birthday[1] + "月" + birthday[2] + "日");
%>
</li>
<li>
<%
String position = new String((request.getParameter("located")).getBytes("ISO-8859-1"),"UTF-8");
out.println("用户所在地:" + position);
%>
</li>
<li>
<%
//hobbys[0] = new String((request.getParameter("hobbys")).getBytes("ISO-8859-1"),"UTF-8");
String[] hobbys = request.getParameterValues("hobby");
if(hobbys.length>0){
String a = "";
for(int i=0; i<hobbys.length; i++){
hobbys[i] = new String((hobbys[i]).getBytes("ISO-8859-1"),"UTF-8");
a = a + hobbys[i];
if(i == hobbys.length - 1){
a = a + "。"; //最后一个兴趣爱好加上句号
}else{
a = a + "、";
}
}
out.println("用户兴趣爱好有:" + a);
}
%>
</li>
<li>
<%
String introduction = new String((request.getParameter("introduction")).getBytes("ISO-8859-1"),"UTF-8");
//String introduction = request.getParameter("introduction");
out.println("用户自我介绍:" + introduction);
%>
</li>
</ul>
<a href="index.jsp">点我返回首页</a>
</body>
index.jsp
<body>
<h2>
<%
String name = (String)session.getAttribute("username");
%> <%out.println("Hello!" + name + ",欢迎登陆系统!");
%>
</h2>
</body>