有以下题目:
请参照并修改此题,以access数据库作为后台数据库,完成留言板留言的录入、修改和查询。要求所有留言必须存储在数据库中,最终提交作业报告,内容包括题目内容,题目总体分析,实现方案,数据库设计,功能模块设计,网页结构设计,运行结果,源程序。参考资料:
客户通过Submit.jsp页面向messagePane.jsp页面提交姓名、留言标题和留言内容,messagePane.jsp页面获取这些内容后,用同步方法将这些内容添加到一个向量中,然后将这个向量添加到application对象中。当用户单击查看留言板时,showMessage.jsp页面负责显示所有客户的留言内容,即从application对象中取出向量,然后遍历向旦中存储的信息。
submit.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY>
<FORM action="messagePane.jsp" method="post" name="form">
<P>输入您的名字:
<INPUT type="text" name="peopleName">
<BR>
<P>输入您的留言标题:
<INPUT type="text" name="Title">
<BR>
<P>输入您的留言:
<BR>
<TEXTAREA name="messages" ROWs="10" COLS=36 WRAP="physical" >
</TEXTAREA>
<BR>
<INPUT type="submit" value="提交信息" name="submit">
</FORM>
<FORM action="showMessage.jsp" method="post" name="form1">
<INPUT type="submit" value="查看留言板" name="look">
</FORM>
</BODY>
<HTML>messagePane.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML>
<BODY>
<%!
Vector v=new Vector();
int i=0;
ServletContext application;
synchronized void sendMessage(String s)
{
application=getServletContext();
v.add(s);
application.setAttribute("Mess",v);
}
%>
<%
String name=request.getParameter("peopleName");
String title=request.getParameter("Title");
String messages=request.getParameter("messages");
if(name==null)
{
name="guest"+(int)(Math.random()*10000);
}
if(title==null)
{
title="无标题";
}
if(messages==null)
{
messages="无信息";
}
String time=new Date().toString();
String s="#"+name+"#"title+"#"+messages+"#";
sendMessage(s);
out.print("您的信息已经提交!");
%>
<A HREF="submit.jsp">返回
<A HREF="showMessage.jsp">查看留言板
</BODY>
<HTML>showMessage.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML>
<BODY>
<%
Vector v=(Vector)application.getAttribute("Mess");
out.print("<table border=2>");
out.print("<tr>");
out.print("<td bagcolor=cyan>"+"留言者姓名"+"</td>");
out.print("<td bagcolor=cyan>"+"留言标题"+"</td>");
out.print("<td bagcolor=cyan>"+"留言时间"+"</td>");
out.print("<td bagcolor=cyan>"+"留言内容"+"</td>");
for(int i=0;i<v.size();i++)
{
out.print("<tr>");
String message=(String)v.elementAt(i);
StringTokenizer fenxi=new StringTokenizer(message,"#");
out.print("<tr>");
int number=fenxi.countTokens();
for(int k=0;k<number;k++)
{
String str=fenxi.nextToken();
byte a[]=str.getBytes("ISO-8859-1");
str=new String(a);
if(k<number-1)
{
out.print("<td bgcolor=cyan >"+str+"</td>");
}
else
{
out.print("<td><TextArea rows=3 clos=12>"+str+"</TextArea></td>");
}
}
out.print("</tr>");
}
out.print("</table>");
%>
</BODY>
</HTML>
请参照并修改此题,以access数据库作为后台数据库,完成留言板留言的录入、修改和查询。要求所有留言必须存储在数据库中,最终提交作业报告,内容包括题目内容,题目总体分析,实现方案,数据库设计,功能模块设计,网页结构设计,运行结果,源程序。参考资料:
客户通过Submit.jsp页面向messagePane.jsp页面提交姓名、留言标题和留言内容,messagePane.jsp页面获取这些内容后,用同步方法将这些内容添加到一个向量中,然后将这个向量添加到application对象中。当用户单击查看留言板时,showMessage.jsp页面负责显示所有客户的留言内容,即从application对象中取出向量,然后遍历向旦中存储的信息。
submit.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY>
<FORM action="messagePane.jsp" method="post" name="form">
<P>输入您的名字:
<INPUT type="text" name="peopleName">
<BR>
<P>输入您的留言标题:
<INPUT type="text" name="Title">
<BR>
<P>输入您的留言:
<BR>
<TEXTAREA name="messages" ROWs="10" COLS=36 WRAP="physical" >
</TEXTAREA>
<BR>
<INPUT type="submit" value="提交信息" name="submit">
</FORM>
<FORM action="showMessage.jsp" method="post" name="form1">
<INPUT type="submit" value="查看留言板" name="look">
</FORM>
</BODY>
<HTML>messagePane.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML>
<BODY>
<%!
Vector v=new Vector();
int i=0;
ServletContext application;
synchronized void sendMessage(String s)
{
application=getServletContext();
v.add(s);
application.setAttribute("Mess",v);
}
%>
<%
String name=request.getParameter("peopleName");
String title=request.getParameter("Title");
String messages=request.getParameter("messages");
if(name==null)
{
name="guest"+(int)(Math.random()*10000);
}
if(title==null)
{
title="无标题";
}
if(messages==null)
{
messages="无信息";
}
String time=new Date().toString();
String s="#"+name+"#"title+"#"+messages+"#";
sendMessage(s);
out.print("您的信息已经提交!");
%>
<A HREF="submit.jsp">返回
<A HREF="showMessage.jsp">查看留言板
</BODY>
<HTML>showMessage.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML>
<BODY>
<%
Vector v=(Vector)application.getAttribute("Mess");
out.print("<table border=2>");
out.print("<tr>");
out.print("<td bagcolor=cyan>"+"留言者姓名"+"</td>");
out.print("<td bagcolor=cyan>"+"留言标题"+"</td>");
out.print("<td bagcolor=cyan>"+"留言时间"+"</td>");
out.print("<td bagcolor=cyan>"+"留言内容"+"</td>");
for(int i=0;i<v.size();i++)
{
out.print("<tr>");
String message=(String)v.elementAt(i);
StringTokenizer fenxi=new StringTokenizer(message,"#");
out.print("<tr>");
int number=fenxi.countTokens();
for(int k=0;k<number;k++)
{
String str=fenxi.nextToken();
byte a[]=str.getBytes("ISO-8859-1");
str=new String(a);
if(k<number-1)
{
out.print("<td bgcolor=cyan >"+str+"</td>");
}
else
{
out.print("<td><TextArea rows=3 clos=12>"+str+"</TextArea></td>");
}
}
out.print("</tr>");
}
out.print("</table>");
%>
</BODY>
</HTML>
就这三个功能的话,完全可以啊,
半天时间:分析题目,其实不外乎要做什么,也就是要解决什么问题,列出问题1,2,3
针对这些问题,应该用什么方法来解决(做得不好没有关系)
半天时间:数据库设计(写好相关文档,画好ER图)(做得不好没有关系)
半天时间:功能模块设计(写好相关文档,类设计)(做得不好没有关系)
半天时间:编码(再编码过程中不断的反思设计上面的失误,然后不停的从头开始迭代整个过程,整个过程,文档的质量会不断的提高)
半天时间整理相关文档
半天时间休息一下,调整精神面貌
THEN :笑容满面的提交结果