1、JSP软件实验实验报告简易网站新闻管理系统实验名称:简易网站新闻管理系统班 级:计科0702班完毕人:何传喜(1508)幺轶群(1535)鲍张鹏(1501)张立明(1538)完毕时间:-11-16简易网站新闻管理系统一、 系统总体设计构建一种简易新闻管理系统,顾客可以通过浏览器访问系统、查看新闻。对于新闻管理也是通过浏览器完毕。这个系统具备操作以便、快捷长处。1.1系统功能及模块新闻管理系统应当具备如下功能:(1) 浏览新闻顾客可以通过浏览器查看新闻,如果有多条新闻,规定可以分页显示。(2) 新闻发布规定是通过浏览器来完毕,并且可以编辑新闻格式。(3) 新闻修改规定通过浏览器完毕。(4) 删除
2、新闻依照需要,可以删除新闻。(5) 系统验证对系统进行管理前,必要通过登录系统验证。顾客不必登录就可以随便查看新闻,系统管理员必要要通过身份验证才干管理系统。依照上述功能需求,系统涉及如下模块:(1) 新闻浏览主页面(2) 新闻浏览最后页面(3) 系统管理主页面(4) 发布新闻模块(5) 修改新闻模块(6) 删除新闻模块1.2系统实现方案本系统是通过网页浏览器进行访问,因此本系统采用B/S构造。B/S构造式一种以Web技术为基本数据库体系构造,它把老式C/S构造中服务器某些分解为一种数据服务器和与一种或各种应用服务器,从而构成一种三层构造客户服务器体系构造。本系统采用JSP技术,JSP容器采用
3、Tomcat6.0,后台数据库管理系统采用MySqL。二、 系统数据库设计2.1数据库需求分析依照本系统功能需求,新闻管理系统需要如下数据项。(1) 新闻资料新闻标题、新闻内容、发布日期、发布人。(2) 顾客密码资料顾客名、密码、与否为管理员、姓名。2.2数据表设计依照上面需求分析,共设计两个表,分别为新闻文章表和顾客表。表2-1新闻文章表(article)列名数据类型与否可空备注IDIntNTITLEVarchar(100)N文章标题BODYVarchar(8000)N文章内容ADDDATEVarhar(30)N发布日期ADDUSERVarchat(10)Y发布人表2-2顾客表(userpa
4、ssword)列名数据类型与否可空备注IDIntNUSER_IDVarchat(15)N顾客名USER_PASSWORDVarchar(15)N顾客密码ISMASTERChar(1)N与否为管理员USER_NAMEVarchar(10)Y是2.3数据库初始化数据表和数据表建立后,就要初始化数据库。由于在使用新闻管理系统时,需要登录到管理页面,进行发布新闻等管理操作,这就需要一种管理员顾客,因此要在顾客表userpassword中添加一条记录。图1.向数据库表userpassword中添加记录三、 系统基本框架新闻管理系统功能是顾客可以通过浏览器查看新闻,管理员也是通过浏览器发布和管理新闻。新闻
5、管理系统基本构造图如图2所示。图2 系统基本架构为了重复使用代码,可以将许多页面都是用公共代码放在一种JSP文献夹中,当其她文献需要调用这些代码时,是用操作标记将其包括进来。公共模块中一共有4个JSP文献和一种CSS文献:“common.jsp”包括其她JSP文献中需要导入Java类和包。“connectdb.jsp”文献重要用来连接数据库。“codefilter.jsp”文献用于对新闻文章内容进行转换,将普通格式与HTML格式之间转换。“check.jsp”文献用于判断与否以系统管理员身份登录了系统,防止非法顾客直接进入系统管理后台对系统进行破坏。普通顾客不需要登录就可以打开新闻浏览主页面:
6、”index.jsp”查看新闻列表,单击其中某一条新闻标题,就可以打开新闻浏览最后界面“article.jsp”查看新闻。由于新闻标题和内容都存在数据库中,因此最后新闻页面时依照数据库中记录动态生成。只有管理员才干输入对的顾客名和密码,通过登录系统:“login.jsp”和“chklogin.jsp”,才干登录到系统管理主页面“main.jsp”。在这个主页面中,管理员可以发布新闻、修改新闻和删除新闻。在Tomcat服务器安装目录下webapps子目录下,创立系统应用目录news。在news目录下除了WEB-INF目录外,还应创立目录incoming、admin和images。其中,incom
7、ing下存储公共模块jsp文献。admin目录下存储与系统管理员管理操作有关jsp文献。images目录下存储本系统用到图片及图像资源。四、 各功能模块设计和实现4.1公共模块设计公共模块是将系统其她页面中重复使用代码集合起来,成为一种或者各种文献,这样,要使用重复代码时,只需要将公共模块包括进来就行了。公共模块一共有4个jsp文献和一种css文献:“common.jsp”、“connectdb.jsp”、“check.jsp”、“coderfiter.jsp”和“style.css”。前4个文献时纯粹嵌入式Java代码,没有HTML脚本,CSS文献用来定义样式表。4.1.1“common.j
8、sp”文献“common.jsp”文献包括其她jsp文献中需要导入Java类和包。程序清单如下:4.1.2“connectdb.jsp”文献“connectdb.jsp”文献重要用来连接数据库以及声明有关变量。程序清单如下:4.1.3“check.jsp”文献“check.jsp”文献用来判断与否以系统管理员身份登录系统,防止非法顾客登录到系统管理后台对系统进行破坏,程序清单如下:4.1.4“coderfiter.jsp”文献“coderfiter.jsp”文献用于对新闻文章内容进行格式转换,即在普通格式与HTML格式之间转换。程序清单如下:= 0) output.append(str_sou
9、rce.substring(posStart,pos); output.append(str_new); posStart = pos + lengOfold; if(posStart lengOfsource) output.append(str_source.substring(posStart); return output.toString(); String toHtml(String s) s = Replace(s,>); s = Replace(s,&,&); s = Replace(s,t, ); s = Replace(s,rn,n); s = Replace
10、(s,n,); s = Replace(s, , ); s = Replace(s,'); s = Replace(s,\); return s;String unHtml(String s)s = Replace(s, , );s = Replace(s,n);return s;%4.1.5“style.css”文献“style.css”文献中,可以定义本web应用程序用到所有样式表,其脚本如下:A:link FONT-SIZE:9pt;COLOR:#000000;TEXT-DECORATION:underlineA:hover FONT-SIZE:9p
11、t;COLOR:#ff0000;TEXT-DECORATION:underlineA:visited FONT-SIZE:9pt;COLOR:#0000ff;TEXT-DECORATION:underline.text FONT-SIZE:9pt;COLOR:#000000;TEXT-DECORATION:none.title FONT-SIZE:16px;COLOR:#000000;TEXT-DECORATION:none.body FONT-SIZE:12pt;COLOR:#000000;TEXT-DECORATION:nonebody background-image:url(./ima
12、ges/bg.jpg);4.2新闻浏览主页面新闻浏览主页面“index.jsp”是顾客浏览新闻主页面,该页面作用是将所有新闻标题以列表形式显示出来,代码如下:网站新闻管理系统 网站新闻管理系统 a href=article.jsp?id= target=_blank 图3 新闻浏览主页面运营效果4.3新闻浏览最后页面读者在新闻浏览主页面“index.jsp”中单击感兴趣新闻标题时,就会打开新闻浏览最后页面“article.jsp”,查看新闻内容;“article.jsp”文献任务就是接受主页面传入新闻ID,然后以此ID在数据库新闻文章表article中查找符合条件记录,然后取出新闻标题、新闻内
13、容等信息,并显示在“article.jsp”页面上。程序清单如下:网站新闻管理系统 网站新闻管理系统  ; 图4 新闻浏览最后页面运营效果44管理员登录系统新闻管理系统后台管理用来发布、修改、删除新闻。拥有相应权限管理员才干管理系统,因此新闻管理系统需要管理员登录系统。登录系统重要涉及两个JSP文献:“login.jsp”和“chklogin.jsp”。4.4.1“login.jsp”文献“login.jsp”文献重要用来让管理员输入顾客名和密码,其代码如下:网站新闻管理系统管理员登录!-function checkdata() if( form.useri
14、d.value.length15 ) alert(请输入对的顾客名 !)return false;if( form.password.value.length15 ) alert(请输入对的登录密码 !)return false; - 管理员登录 顾客名: 密 码: 图5 管理员登录系统页面运营效果4.4.2“chklogin.jsp”文献在图5所示页面中,管理员输入顾客名和密码后,单击“登录”按钮,提交表单,就会打开“chklogin.jsp“页面。检查输入顾客名和密码与否对的。代码如下:图6 顾客名和密码输入错误4.5系统管理主页面当管理员输入对的顾客
15、名和密码后,就进入了系统管理主页面“main.jsp“。系统管理主页面”main.jsp“是系统后台管理中心,通过该页面就可以发布、修改、删除新闻。“main.jsp”代码如下:网站新闻管理系统管理 系统管理后台 发布新闻 刷新 主页 a href=editarticle.jsp?id= a href=editarticle.jsp?id=编辑新闻 a href=javascript:del()删除新闻 !-function del(id) if (confirm(您确信要删除吗?) ) top.location=delarticle.jsp?id=+id 图7 系统管
16、理主页面运营效果4.6发布新闻模块如果想发布新闻。可以在图7所示页面中,单击“发布新闻”,就会进入发布新闻模块。发布新闻模块。发布新闻模块由两个文献构成:“addarticle.jsp”和“savearticle.jsp”。顾客在“addarticle.jsp”页面中添加新闻,然后提交表单,通过“savearticle.jsp”页面将添加新闻保存到数据库news中数据表artice中。4.6.1“addarticel.jsp”文献程序代码如下:网站新闻管理系统管理function check_input(theForm) if (theForm.newstitle.value = ) alert(请输入新闻标题.); theForm.newstitle.focus(); return (false); if (theForm.newsbody.value = ) alert(请输入新闻内容.); theForm.newsbody.focus(); return (false); if (theForm.newstitle.value.length 100) alert(新闻标题长度应不大于50个字.); theForm.newstitle.focus(); return (false); table border=1 width=750 align=cen