基于jspjava新闻发布系统的设计和开发.docx

上传人:b****3 文档编号:5460545 上传时间:2023-05-08 格式:DOCX 页数:44 大小:683.70KB
下载 相关 举报
基于jspjava新闻发布系统的设计和开发.docx_第1页
第1页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第2页
第2页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第3页
第3页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第4页
第4页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第5页
第5页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第6页
第6页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第7页
第7页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第8页
第8页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第9页
第9页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第10页
第10页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第11页
第11页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第12页
第12页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第13页
第13页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第14页
第14页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第15页
第15页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第16页
第16页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第17页
第17页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第18页
第18页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第19页
第19页 / 共44页
基于jspjava新闻发布系统的设计和开发.docx_第20页
第20页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于jspjava新闻发布系统的设计和开发.docx

《基于jspjava新闻发布系统的设计和开发.docx》由会员分享,可在线阅读,更多相关《基于jspjava新闻发布系统的设计和开发.docx(44页珍藏版)》请在冰点文库上搜索。

基于jspjava新闻发布系统的设计和开发.docx

基于jspjava新闻发布系统的设计和开发

毕业设计(论文)

 

基于jsp(java)新闻发布系统的设计和开发

 

姓  名

系别、专业

导师姓名、职称

完成时间

 

摘要

【摘要】

随着计算机科学的发展,数据库技术在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。

个性化已逐渐成为当今Web应用的潮流。

利用JSP技术开发的网站新闻管理系统,实现了网站新闻的动态管理,因为可以用来动态发布新闻信息,所以使得对信息的管理更加及时、高效,提高了工作效率。

【关键词】Struts组建编程模型、ActionForm的说明、样式层、持久层、服务层、控制层。

目录

摘要1

0引言3

1系统分析4

1.1需求分析4

1.2可行性分析4

2总体设计4

2.1项目规划4

2.2系统功能结构图4

3系统设计5

3.1设计目标5

3.2开发及运行环境5

3.3逻辑结构设计5

4网站总体架构6

4.1文件布局6

4.2网站首页的运行结果6

4.2类的分布8

5网站后台主要功能模块设计8

5.1后台登录模块设计8

5.2总管理员设置模块设计11

5.3更改总管理员密码模块设计23

5.4新闻信息管理27

5.5总结32

6网站前台主要功能模块设计32

6.1今日新闻的显示32

6.2输入新闻的关键字查找新闻34

6.3新闻人物的查看和投票36

7小结39

附录一参考文献40

附录二数据表41

附录三文件架构图43

0引言

Internet的蓬勃发展,使新闻的传播方式发生了巨大的变化,传统的信息传播媒体电视、广播、报纸已经不再是人们茶余饭后的主要精神甜点,人们更多的开始关注网络新闻。

由于互联网所容纳的信息量大、内容丰富、信息及时、准确,更有相关信息的全面的介绍与比较,大大地方便了人们的阅读,因此在短短几年的时间里,互联网便济身于众多媒体之间,并具有相当一部分媒体人群。

借此东风,新闻网也迅速发展起来,它内容丰富,涉及到商业、工业、农业、银行、财政、教育、娱乐、信息等各个产业,信息量大,不仅有实事新闻,还有相关的行业信息,同时新闻网具有互联网所具备的一切特性。

在全球网络化、信息化的今天,新闻网迅速发展,大大地丰富了人们的生活,不知不觉中,它已经成为人们生活中不可或缺的重要组成部分。

1系统分析

1.1需求分析

通过相关调查,要求网站具有以下功能;

通过网络,展示各行业新闻及相关信息。

提供新闻搜索功能。

设置新闻人物投票功能,并统计投票数量。

支持其他网站的友情链接。

为后台管理提供管理入口。

1.2可行性分析

新闻发布系统后台对新闻作了详细的分类,前台以分类形式显示新闻的详细信息,满足了人们浏览新闻网时分类查看新闻信息的要求,同时提供新闻信息查询功能,方便浏览者查找相关的新闻信息。

新闻网后台则通过对总管理员设置和管理员添加等模块对网站管理员进行管理,保证了网站的安全性。

2总体设计

2.1项目规划

新闻网是一个功能完善的新闻类网站,由客户前台新闻浏览和后台新闻管理两大部分组成。

前台功能模块

前台主要包括新闻分类、显示新闻详细信息、新闻信息查询、新闻人物投票、友情链接、提供后台登录口。

后台管理模块

后台主要包括后台总管理员设置及密码修改、添加管理员、管理员信息设置、新闻类型管理、新闻详细类型管理、新闻信息管理、链接管理、新闻人物管理、退出后台。

2.2系统功能结构图

新闻发布系统前台功能结构,如图1所示。

图1新闻网前台功能结构图

新闻网后台功能结构,如图2所示。

图2新闻网后台功能结构图

3系统设计

3.1设计目标

本网站是根据各行业新闻信息分类进行开发设计的,主要实现如下目标:

分类展示各行业新闻。

显示新闻的详细信息。

设置新闻搜索功能模块。

设置新闻人物投票及投票数统计功能。

提供其他网站的友情链接。

3.2开发及运行环境

硬件平台:

CPU:

P41.8GHz;

内存:

256MB以上。

软件平台:

操作系统:

Windows2000;

数据库:

SQLServer2000;

开发工具包:

JDKVersion1.4.1;

Web服务器:

Tomcat;

浏览器:

IE5.0,推荐使用IE6.0;

分辨率:

最佳效果1024*768像素。

3.3逻辑结构设计

本系统数据库采用SQLserver2000数据库,系统数据库名称为db_news。

数据库db_news中包含7张表。

关于数据库中的数据表请参见附录B

4网站总体架构

4.1网站首页的运行结果

网站前台首页的运行结果如图5所示。

图5网站前台首页运行结果

网站框架图说明如下:

表`1网站前台首页页面说明

区域

名称

说明

对应文件

1

网站导航

主要展示网站的旗帜广告和站内导航条

typeNewWatch.do

2

功能模块

主要用于显示导航模块中的功能

linkSelect.do

3

内容显示

主要用于显示功能模块中的内容

dateNews.do?

type=今日新闻

网站后台首页的运行结果如图6所示。

图6网站后台首页运行结果

网站后台首页中的各部分说明如表2所示。

表2网站后台首页页面说明

区域

名称

说明

对应文件

1

网站导航

主要展示网站的旗帜广告和站内导航条

typeTopAction.do

2

功能模块

主要用于显示导航模块中的功能

left_main.jsp

3

内容显示

主要用于显示功能模块中的内容

right_main.jsp

4.2类的分布

新闻发布系统是利用Struts框架实现的,新闻发布系统中类的分布如图7所示。

样式层

前台控制层

服务层

工具层

后台控制层

持久层

图7类的分布

类存放的文件夹功能如表3所示。

表3类存放的文件夹功能列表

名称

功能

持久层(dao文件夹)

各种方法(增加、删除、修改和查询)的实现

样式层(domain文件夹)

所存放的类是Actionform类,在类中必须要继承ActionForm(也就是entendsActionForm)

服务层(server文件夹)

存放的dao层功能的业务的类

控制层(webtier文件夹)

存放在jsp页面中存在的方法实现的类

工具层(tool文件夹)

类名为JDBConnection.java(连接数据库的功能)、类名为Chinese.java(字符级转换的类)、类名为SessionLib(用来存在session变量)

5网站后台主要功能模块设计

5.1后台登录模块设计

在新闻发布系统中,后台管理员分为两种:

一个是普通管理员,他可以对新闻类型进行定义,也可以发布新闻、设置投票人数及网站链接;另一个是总管理员,他除了可操作以上功能外,还可以对普通管理员进行设置,总管理员和普通管理员都能通过后台登录页面登录后台。

在前台单击“进入后台”超链接,即可进入到后台登录页面,如图8所示。

图8后台登录页面

1.样式层的类

具体代码如下

/*******************************ManagerActionForm.java***************************/

packagecom.victor.domain;

importorg.apache.struts.action.*;

publicclassManagerActionFormextendsActionForm{

privateIntegermanagerID;//在数据库中的流水号

privateStringmanagerIssueDate;//管理员添加日期

privateStringmanagerMark;//管理员的标示

privateStringmanagerName;//管理员帐号

privateStringmanagerPassword;//管理员密码

privateStringmanagerRealName;//管理员的真实姓名

privateStringmanagerType;//管理员的权限

publicManagerActionForm(){

this.managerID=newInteger(-1);

this.managerIssueDate="";

this.managerMark="";

this.managerName="";

this.managerPassword="";

this.managerRealName="";

this.managerType="";

}

publicIntegergetManagerID(){

returnmanagerID;

}

publicvoidsetManagerID(IntegermanagerID){

this.managerID=managerID;

}

………………………………………………….

2.持久层的方法

验证输入的内容是否正确有很多方法,笔者采用的是利用sql语句的方法进行验证输入账号和密码。

对输入的账号及密码判断是否正确。

利用接口类的方法实现的代码如下:

/*********************************ManagerDao.java*******************************/

publicinterfaceManagerDao{

publicManagerActionFormmanagerCheck(ManagerActionFormmanagerActionForm)

}

实现接口的方法的代码如下:

/*******************************ManagerDaoImpl.java*****************************/

//核对普通管理员帐号和密码

publicclassManagerDaoImplimplementsManagerDao{//实现接口类中的方法用implements加上接口类名

publicManagerActionFormmanagerCheck(ManagerActionFormmanagerActionForm){

ManagerActionFormmanager=null;定义一个Object型的数据,初使化为null

JDBConnectionconnection=newJDBConnection();//连接数据库的方法

Stringsql="select*fromtb_managerwhereName='"+managerActionForm.getManagerName()+"'";

try{

ResultSetrs=connection.executeQuery(sql);//把sql语句传到JDBConnection类中去

while(rs.next()){

manager=newManagerActionForm();

manager.setManagerPassword(rs.getString(3));//查找过所需要的字段数据

}

}

catch(SQLExceptionex){

}

connection.close();

returnmanager;//把对象返回到方法中去

}

}

3.服务层的方法

利用接口类的方法实现的代码如下:

/********************************ManagerFacade.java*****************************/

publicinterfaceManagerFacade{

publicManagerActionFormmanagerCheck(ManagerActionFormmanagerActionForm)

}

实现接口的方法的代码如下:

/*******************************ManagerFacadeImpl.java**************************/

publicclassManagerFacadeImplimplementsManagerFacade{//实现接口类的方法用implements

privateManagerDaomanagerDao;

publicManagerFacadeImpl(){

this.managerDao=newManagerDaoImpl();//实现dao类的方法。

}

publicManagerActionFormmanagerCheck(ManagerActionFormmanagerActionForm){

returnthis.managerDao.managerCheck(managerActionForm);//调用持久层的方法

}

}

4.管理员登陆控制层的方法

/****************************ManagerCheckAction.java****************************/

packagecom.victor.webtier.managerAction;

//核对帐号和密码

publicclassManagerCheckActionextendsAction{

privateManagerFacademanagerFacade;

publicManagerCheckAction(){

this.managerFacade=newManagerFacadeImpl();

}

publicActionForwardperform(ActionMappingactionMapping,ActionFormactionForm,

HttpServletRequesthttpServletRequest,HttpServletResponsehttpServletResponse){

Chinesechinese=newChinese();

ManagerActionFormmanagerActionForm=(ManagerActionForm)actionForm;

managerActionForm.setManagerName(chinese.str(httpServletRequest.

getParameter("managerName")));

ManagerActionFormmanager=this.managerFacade.managerCheck(managerActionForm);

//通过对象调用方法

if(manager==null){

returnactionMapping.findForward("managerWrong");//通过manager是空值的话,返回错误页面。

}

elseif(!

manager.getManagerPassword().equals(httpServletRequest.getParameter("managerPassWord")))

{

returnactionMapping.findForward("managerWrong");//查找的值与在jsp页面中的值不一致,返回错误页面。

}

returnactionMapping.findForward("managerRight");//查找的值与在jsp页面中的值一致,返回正确页面。

}}

5.struts-config.xml中的配置

在这里主要配置formBean和action动作指向的jsp页面。

代码如下:

/********************************struts-config.xml*********************************/

--指错误的页面-->

--指向正确的页面-->

6.管理员登陆jsp页面的说明

/*********************************managerCheck.jsp*********************************/

管理员登陆

 

帐号:

密码:

    

5.2总管理员设置模块设计

总管理员在数据库中是惟一的,总管理员的信息在页面中不会显示出来,在此页面中只能修改自己的密码及对普通管理员进行设置。

用户单击“总管理员设置”超链接,进入总管理员设置页面。

系统首先对用户输入的账户和密码进行核对。

因为并不是所有的管理员都能够有这个权利,所以在SQL语句中应体现惟一性的条件,样式层所要调用的类是ActionForm,跟用户登录时调用的actionForm是同一个类,在这里就不做介绍了。

1.总管理员的登录操作

登录方法主要用于系统管理员进行系统维护时,作为登录后台时密码验证之用。

在用户输入用户账号和密码之后,调用该方法即可验证该用户是否合法。

单击“总管理员设置”超链接,进入到总管理员设置页面,实现此超链接的jsp代码如下:

/***********************************left_main.jsp*********************************/

--把超链接的jsp页面,指向框架显示出来,框架名称为mainFrame。

(如图3.6所示)-->

总管理员设置

总管理员页面的运行结果如图9所示。

图9总管理员页面运行结果

总管理员页面所对应的jsp页面代码如下:

/*********************************adminPassword.jsp******************************/

请输入帐户:

请输入密码:

   

在上面的jsp页面代码中,action触发的是adminAction.do的方法,它与后台登录的方法相似,只是调用的SQL语句不同。

在持久层中查询总管理员的方法的代码如下:

接口类的方法:

/*********************************ManagerDao.java*********************************/

publicManagerActionFormadminCheck(ManagerActionFormmanagerActionForm)

实现接口类的方法:

/***********************************ManagerDaoImpl.java***************************/

publicManagerActionFormadminCheck(ManagerActionFormmanagerActionForm){

ManagerActionFormmanager=null;//初始化对象

JDBConnectionconnection=newJDBConnection();

Stringsql="select*fromtb_managerwh

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2