实验目的及要求:
- 理解Application的有效期。
- 掌握Application内置对象的setAttribute()等方法的使用。
- 掌握Application对象存取数据的方法。
实验内容:
1.编写一个页面进行餐厅用户满意度调查,如图所示,提交之后,由第二个页面将选择项和留言信息保存到application中,从第一个页面用超链接或第二个页面转到第三个页面查看满意度调查结果和所有的改进意见,要求模拟输出6人以上调查结果。
实验关键代码:(10号字,宋体,单倍行距)
1:
<body>
<%
out.print("<font size=8>");
out.print("餐厅用户满意度调查:");
out.print("</font>");
%>
<form action="jw-x2.jsp" method="post" name="form">
对本站的评价:
<input type="radio" name="aaa" value="满意" checked="default">好
<input type="radio" name="aaa" value="基本满意">一般
<input type="radio" name="aaa" value="不满">差<br>
改进意见:<br> <textArea name="messages" rows="10" cols=36
wrap="physical"></textArea>
<br><input type="submit" value="提交" name="submit">
<input type="reset" value="重置">
</form>
<br>
<a href="jw-x3.jsp">查看</a>
</body>
2:
<body>
<%! Vector v=new Vector();
int i=0;
ServletContext application;
synchronized void leaveWord(String s){
application=getServletContext();;
i++;
v.add(s);
application.setAttribute("Mess",v);
}
%>
<% String aaa=request.getParameter("aaa");
String messages=request.getParameter("messages");
if(messages==null||messages.equals(""))
messages="无信息";
String s=aaa+"#"+messages;
leaveWord(s);
%>
<a href="jw5-x1.jsp">返回上一个页面</a>
</body>
3:
<body>
<% Vector v=(Vector)application.getAttribute("Mess");
for(int i=0;i<v.size();i++) {
String message=(String)v.elementAt(i);
String []a =message.split("#");
out.print("<br>");
out.print("对本站的评价:"+a[0]+"<br>");
out.print("改进意见:<br>"+a[1]);
out.print("<br>--------------<br>");
}
%>
</body>
实验结果: