新闻管理.docx

上传人:b****7 文档编号:9448600 上传时间:2023-02-04 格式:DOCX 页数:59 大小:1.03MB
下载 相关 举报
新闻管理.docx_第1页
第1页 / 共59页
新闻管理.docx_第2页
第2页 / 共59页
新闻管理.docx_第3页
第3页 / 共59页
新闻管理.docx_第4页
第4页 / 共59页
新闻管理.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

新闻管理.docx

《新闻管理.docx》由会员分享,可在线阅读,更多相关《新闻管理.docx(59页珍藏版)》请在冰豆网上搜索。

新闻管理.docx

新闻管理

基于JSP+Servlet信息发布平台的设计与优化

 

目录

1选题概述2

1.1开发的目的和基本内容2

1.2开发技术背景简介2

2基本功能设计3

2.1信息发布平台系统构成3

2.2系统功能分析设计4

2.2.1系统管理登录4

2.2.2新闻管理5

2.2.3其他项目管理6

2.3信息发布功能设计7

3系统功能优化8

3.1JavaScript登录校验8

3.2利用JS改造列表功能9

3.3利用Filter实现系统登录过滤11

3.4DBCP优化数据库访问12

3.5分页管理优化页面数据访问13

3.6通过自定义标记优化设计15

4系统测试17

4.1测试用例17

4.2测试结果17

4.3测试结论20

5实习总结21

参考文献21

1选题概述

1.1开发的目的和基本内容

通过这次试验,培养应用所学的理论知识解决实际问题的能力,提升实际动手编写代码的能力;掌握JSP、Servlet应用程序相关的开发知识,掌握JavaWeb应用开发的流程及管理过程。

达到对软件开发初步认识的效果。

通过对JavaWeb应用程序开发的流程及各个阶段的主要工作,能够熟练部署、运行JavaWebApp,掌握JavaWeb应用程序的发布技术

此外,本次试验还涉及了JavaScript、CSS、ServletFilter、DBCP、JSTL及Servlet分页技术的基本知识,对已经实现的模块加以优化和改进。

1.2开发技术背景简介

随着社会高速发展,社会信息化的不断提高,机构各部门之间对信息流通的需求越来越重要,信息的及时发布对工作效率有很深的影响。

科研信息发布系统研发的目的就是实现新闻信息的及时发布,项目的高效管理。

随着计算机技术与internet的高速发展,原始的获取信息、统计、管理方式暴露出许多致命的弱点,而internet的跨时间性,跨地域性和海量信息源的优势越来越来越明显,同时也为我们带来了新的机遇,为新的基于web的信息管理系统提供了新的发展途径。

其快速的信息查询、方便快捷的信息统计、随心所欲的交流平台,为高校学生的信息获取提供非常优越的条件,也为管理人员节省了大量的统计计算时间

在这个先进的时代发展需求下,我的毕业设计选择了科研信息发布平台,时代的进步,计算机越来越广泛的运用,使很多原本由手工操作的管理,慢慢由计算机代替,而且日加完善。

科研信息发布平台就是其中一个典型的例子,由早先的手工操作管理,提升为计算机管理,大大的节约了人力物力资源。

现今,各大高校大多仍然以手工登记管理为主,不仅慢而且容易出错,花费大量的时间和人力资源,工作效率低,造成了高校成本偏高,科研信息一旦丢失无法恢复宝贵的数据。

信息查询繁杂,难于快速查询到满足客户需求的科研信息,难以给客户提供高质量的信息服务。

特别对于通过电话咨询科研信息的客户来说,无法提供快速有效的科研信息。

科研信息公告往往是通过第三方印刷的模板,手工填写自己的科研信息,过程复杂、耗时长、成本代价高。

高校没有自己的网站,甚至没有电脑,往往是被动的等待客户的来访,而无法主动地把科研信息及时地传播给广泛的客户群。

1.2项目的意义与前景

科研活动是高校内的主旋律之一,高校内的科研活动日益成为反映大学综合实力的重要指标。

随着高校科研投入和从事科研活动的人员的不断增加,高校科研管理的压力也越来越大。

本项目的意义就在于通过搭建一个大型的科研信息平台,能够快速有效的提高高校科研管理工作的高效性、科学性和透明性,并使得科研管理工作能更好的服务于高校内所有的科研工作者,更好的为大学内科研领导提供科研决策支持。

系统建设和实施后,将大大提高学校科研管理工作的信息化水平,全面实现高校内科研部门的网络化科研管理体系。

本系统将会成为联系科研活动人员和科研管理人员的纽带,也将给高校整个的信息化将设带来深远而有意义的影响。

提高了信息检索的效率,实现灵活的查询;减轻管理人员手工制作报表、统计分析的负担;提高了科研管理的效率。

它将有助于管理人员从繁琐的管理工作中解脱出来,使管理系统化、条理化,能迅速获得感兴趣的信息。

科研信息平台是一个一体化的系统或集成,通常包括业务信息系统、知识工作系统、决策支持系统[3]。

本次设计以开发环境是微软的MyEclipse开发平台,使用的语言是JAVA语言,而JSP是建立在公共语言运行库上编程框架,可用于服务器上生成功能强大的Web应用程序。

解决传统的通过第三方印刷的模板,手工填写自己的科研信息,过程复杂、耗时长、成木代价高的科研信息公告的弊端。

通过本次设计客户可以在网上随时随地查看新闻和科研项目等重要信息,方便快捷,成本低,实现大量信息保存及查看。

2基本功能设计

2.1信息发布平台系统构成

信息发布平台用于发布教育教学的相关信息。

其中包括成员信息、新闻、在研项目、研究成果、老师信息、学生信息、课程信息等教育教学相关信息的管理及发布。

信息发布平台APP构成

信息发布平台APP中具体功能模块包括如下部分:

 

 

系统功能

系统划分为教学相关信息的发布功能、平台后台管理、系统用户管理功能:

1)系统用户管理:

对普通用户和系统管理员的管理

2)教学相关信息的发布功能:

普通用户可以浏览已发布的所有新闻、在研项目的信息

成果信息、师生信息。

2.1新闻的发布

2.2在研项目信息的发布

2.3研究成果发布:

2.4师生信息介绍

3)平台后台管理功能:

系统管理员登录管理页面,可以查看、编辑、添加、删除新闻信息、在研项目信息、研究成果信息、师生信息。

3.1新闻管理

3.2在研项目管理

3.3师生信息管理

3.4其他内容管理

2.2系统功能分析设计

2.2.1系统管理登录

管理员登录科研信息平台的后台管理的界面,如图所示:

图2-1系统员进行登录界面

系统管理员进入本系统时,首先进入的就是登录页面,在此页面输入管理员用户名和密码,这两项输入正确的情况下才能进入管理界面。

若有信息输入错误,则无法进入系统进行管理,因此验证信息这一环节保证了系统的安全性及信息的安全性,有权限的用户才可以进入系统进行管理,这起到了预防非法进入进行非法操作的功能。

实现本模块的主要代码如下所示:

publicclassAdmin_Manager{

//判断对象Admin是否有相应的记录在数据库中

publicstaticbooleanCheckAdmin(Stringusername,Stringpassword){

Stringquery="selectcount(*)fromadminwhereadmin.name='"

+username+"'andadmin.password='"+password+"'";

//声明字符串类型变量,创建数据库插入查询语句

//调用之前建立的nCount方法,执行查询语句,返回结果

intcount=DataProcess.nCount(query);

if(count>0){//如果结果大于0

returntrue;//表示此用户存在返回真

}else

returnfalse;

}

//查看数据库是否有指定username的Admin记录

publicstaticbooleanHasAdmin(Stringusername){

Stringquery="selectcount(*)fromadminwhereadmin.name='"

+username+"'";

//声明字符串类型变量,创建数据库查询语句

intcount=DataProcess.nCount(query);//调用之前建立的nCount方法,执行查询语句,返回结果

if(count>0){//如果结果大于0

returntrue;//表示此用户存在返回真

}else

returnfalse;

}

publicstaticArrayListgetManagerList(){//取得数据库的所有记录

Stringquery="select*fromadmin";

Connectioncon=DataProcess.getConnection();

ArrayListal=newArrayList();

try{

Statementstmt=con.createStatement();

ResultSetrs=stmt.executeQuery(query);

while(rs.next()){

//如果结果集中有记录,取得字段名为admin.name的值返回给username变量

Stringusername=rs.getString("admin.name");

Stringpassword=rs.getString("admin.password");

Managerma=Manager.getInstance();//取得manager类的实例

ma.setUsername(username);//用刚刚取得的name设置用户名

ma.setPassword(password);//用刚刚取得的password设置密码

al.add(ma);//将ma对象添加到ArrayList类型中的al中

}

rs.close();

stmt.close();

con.close();

returnal;

}catch(Exceptione){

e.printStackTrace();

returnnull;

}

}

 

管理员登录后台管理的序列图,如图所示:

图2-2系统员进行登录序列图

2.2.3新闻管理操作设计

系统管理员查看所有新闻,新闻信息都在右侧显示出来,同时在右侧可以进行添加、修改、删除的操作如图所示:

图2-3新闻管理界面

系统管理员登录成功后进入管理界面,对新闻进行管理,首先查看新闻信息,系统返回新闻信息,然后显示在界面上,添加新闻信息,填写内容,显示添加成功。

修改新闻信息,编辑内容,显示修改成功提示。

删除新闻信息,成功后会显示信息删除成功。

系统管理员进行新闻管理的序列图:

图2-4新闻管理时序图

2.2.3在研项目管理操作设计

系统管理员查看所有在研项目,在研项目信息都在右侧显示出来,同时在右侧可以进行添加、修改、删除的操作如图所示:

图2-5在研项目管理界面

系统管理员登录成功后进入管理界面,查看在研项目信息,数据库会返回在研项目信息把在研项目信息显示在界面上,系统管理员进行添加在研项目信息,添加内容完成后,会显示添加成功提示。

如要修改在研项目信息,修改成功后,系统会显示修改已成功。

对在研项目进行删除,删除成功后会返回删除成功提示。

系统管理员进行在研项目管理的序列图:

图2-6在研项目管理时序图

2.2.4其他项目管理

1.学生管理操作设计

系统管理员查看所有学生信息,学生信息都在右侧显示出来,同时在右侧可以进行添加、修改、删除的操作如图所示:

图2-7学生信息的界面

系统管理员登录成功后进入管理界面,查看学生信息,数据库会返回学生信息把学生信息显示在界面上,系统管理员进行添加学生信息,添加内容完成后,会显示添加成功提示。

如要修改学生信息,修改成功后,系统会显示修改已成功。

对学生信息进行删除,删除成功后会返回删除成功提示。

图2-8学生信息的时序图

2.老师管理操作设计

系统管理员查看所有老师信息,老师信息都在右侧显示出来,同时在右侧可以进行添加、修改、删除的操作如图所示:

图2-9老师信息界面

系统管理员登录成功后进入管理界面,查看老师信息,数据库会返回老师信息把老师信息显示在界面上,系统管理员进行添加老师信息,添加内容完成后,会显示添加成功提示。

如要修改老师信息,修改成功后,系统会显示修改已成功。

对老师信息进行删除,删除成功后会返回删除成功提示。

图2-10老师信息时序图

3.评论管理操作设计

系统管理员查看评论信息,评论信息都在右侧显示出来,同时在右侧可以进行删除的操作如图所示:

图2-11评论界面

系统管理员登录成功后进入管理界面,查看评论信息,数据库会返回评论信息把评论信息显示在界面上,系统管理员进行对评论信息进行删除,删除成功后会返回删除成功提示。

图2-12评论时序图

3系统功能优化

3.1JavaScript登录校验

本主界面为default.asp,它的功能是显示新闻类别和每个类别中的10条新闻,并提供进入管理界面(index.asp)的链接。

录入新闻类别和新闻内容后,default.asp的界面如图5-6所示。

图3-1default.asp的界面

下面介绍default.asp的主要代码。

1.显示新闻类别链接

default.asp将新闻按照分类显示,每个新闻类别只显示最新的10条新闻。

如果新闻类别

较多,则网页会被拉长,给用户阅读带来不便。

为了解决这个问题,本实例使用书签来定义新

闻类别的位置,书签格式为#a<类别编号>。

例如,类别编号为1的新闻类别的书签名称为#al。

下面的代码将在网页中生成所有新闻类别的链接,每个链接都指相应新闻类别的书签。

这样,用户就可以通过单击链接直达新闻类别了。

<%

'=====显示所有新闻类别供点击,点击不同类别显示该类别的新闻=====

'按顺序读取所有新闻类别,保存在记录集rsCate中

sql="SELECT*FROMCategoryORDERBYCateId"

SetrsCate=conn.Execute(sql)

'显示所有新闻类别链接

DoWhileNotrsCate.EOF

stitle=rsCate("CateName")

cid=rsCate("CateId")

'每个新闻类别标题被定义为一个书签,名为#a类别编号

%>

">

none;color:

black'><%=stitle%>|

<%

rsCate.MoveNext

Loop

%>

如果网页中显示的内容较多,通常需要通过定义书签的方法使用户快速到达指定的位置。

书签是网页中被标记的位置或被标记的选中文本。

在FrontPage中选择“插入”/“书签”菜单项,可以在指定位置插入书签。

在本例中,因为书签位置是动态变化的,所以需要使用代码定义,方法如下:

2.“新闻管理”链接

系统管理员Admin或其他用户可以通过“新闻管理”链接进入新闻管理页面index.asp

none'>新闻管理

3.显示各新闻类别中的最新新闻

default.asp的主要内容是显示新闻类别中的最新10条新闻,并将3天内的新闻使用new图片标记。

当然,如果新闻的内容经常更新,则可以将3天改为1天。

这部分代码如下:

<%

'=====显示所有新闻类别供点击,点击不同类别显示该类别的新闻=====

'按顺序读取所有新闻类别,保存在记录集rsCate中

sql="SELECT*FROMCategoryORDERBYCateId"

SetrsCate=conn.Execute(sql)

'显示所有新闻类别链接

DoWhileNotrsCate.EOF

stitle=rsCate("CateName")

cid=rsCate("CateId")

'每个新闻类别标题被定义为一个书签,名为#a类别编号

%>

">

none;color:

black'><%=stitle%>|

<%

rsCate.MoveNext

Loop

%>

新闻查询

none'>新闻管理

<%

'将指针移至开始位置,分别显示每个分类中的新闻

IfrsCate.BOF=FalseThen

rsCate.MoveFirst

EndIf

'依次显示每个新闻类别中最新的10条新闻

DOWHILENotrsCate.EOF

stitle=rsCate("CateName")

cid=rsCate("CateId")

'变量cnt用来记录

cnt=0

'生成表格

Response.Write""

'显示新闻类别,并设置书签

Response.Write" == "

'显示新闻类别标题

Response.Writestitle+" =="

'生成另一个表格,用于显示新闻标题

Response.Write""

'按提交时间的降序显示新闻标题

sql="SELECT*FROMNewsWHERECateId="&cid&"ORDERBYPosttimeDESC"

rs.Opensql,conn,1,1

DOWHILENotrs.EOF

'计数

cnt=cnt+1

'只显示10条新闻

Ifcnt<11Then

Dimndate

ndate=DateAdd("d",-3,date())

'显示新闻标题及链接,查看新闻的脚本文件为NewsView.asp

Response.Write"

id="+cstr(rs("id"))+"'>"+rs("Title")+""

'如果新闻中有图片,则在标题中显示(附图)

Ifrs("Attpic")ThenResponse.Write"(附图)"EndIf

Response.Write""

'3天内新闻标记new图片

Ifdatediff("d",rs("Posttime"),ndate+time())<=0Then

Response.Write""

EndIf

'显示新闻提交的时间

Response.Write"("+CStr(rs("Posttime"))+")"

EndIf

rs.MoveNext

Loop

Response.Write""

'设置返回顶部链接,跳转到书签#top

Response.Write"返回顶部   "

'生成“更多新闻”链接,查看指定类别所有新闻的脚本为Category.asp

Response.Write"

flag="+CStr(cid)+"'>更多新闻...

"

Response.Write""

rs.Close

rsCate.MoveNext

loop

%>

3.2利用JSP改造列表功能

在对系统进行管理之前,需要通过系统的身份认证。

本站中使用chkpwd.asp进行身份验证。

对于需要登陆才能察看的网页可以在网页的最前端加上如下代码:

--#includefile=”chkpwd.asp”-->

这样为登陆的用户将看到如下界面:

图3-2登陆的用户

3.2.1设计管理界面

管理界面的功能是对新闻类别和新闻提供管理界面,只有有权限的用户才能进入管理界面。

本节将介绍管理界面index.asp的实现方法。

录入新闻类别和新闻内容后,index.asp的界面如图5-7所示。

图3-3管理界面

下面介绍index.asp的主要代码。

(1)包含文件

在index.asp的开始部分添加下面的代码,这样在打开网页时,程序会自动连接到数据库,并进行身份验证。

--#includefile="ConnDB.asp"-->

--#includefile="ChkPwd.asp"-->

(2)显示新闻类别链接

index.asp将新闻按照分类显示,每个新闻类别只显示最新的20条新闻。

显示新闻类别的代码如下:

<%

Dimrs,rsCate

Setrs=Server.CreateObject("ADODB.RecordSet")

setrsCate=Server.CreateObject("ADODB.RecordSet")

'定义变量

Dimiflag,sql_where

'参数flag表示指定的新闻类别

iflag=Request.QueryString("flag")

'设置SQL语句,读取所有的新闻类别到rs.Cate

sql="SELECT*FROMCategoryORDERBYCateId"

SetrsCate=conn.Execute(sql)

'显示新闻类别链接,注意根据类别编号设置参数flag

DOWHILENotrsCat

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1