生活中实际操作对于新闻发布系统的具体操作需求的分析报告.docx
- 文档编号:28435248
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:21
- 大小:1.21MB
生活中实际操作对于新闻发布系统的具体操作需求的分析报告.docx
《生活中实际操作对于新闻发布系统的具体操作需求的分析报告.docx》由会员分享,可在线阅读,更多相关《生活中实际操作对于新闻发布系统的具体操作需求的分析报告.docx(21页珍藏版)》请在冰豆网上搜索。
生活中实际操作对于新闻发布系统的具体操作需求的分析报告
生活中实际操作对于新闻发布系统的具体操作需求的分析报告
第一章绪论
1.1课题背景
数字信息时代使人们的交流方式发生了很大的变化,新闻发布系统又名信息发布系统,是一个以计算机网络平台构建起来的新闻发布系统,它可以对网络上所有的信息进行管理分类,还能系统化,标准化的发布到上的一种应用程序,信息通过一个简单的界面加入数据,然后通过已有的网页模板格式与审核流程发布到上。
它的出现大大减轻了更新维护的工作量,通过网络数据库的引用,将网络的更新工作简化到只需要录入文字和上传图片,从而使的更新的速度大大缩短,从而大大加快了信息的传播速度。
目前,对于新闻发布系统的开发技术有很多种,比如PHP技术、ASP技术、JSP技术、NET技术等,成熟的新闻发布系统有很多,如著名的V7ContentManagementSuite(西门子公司采用的技术)等以及开源的产品也得到了广泛的应用,如OpenCMS等。
本课程我们将学习以JSP技术进行开发,去实现一个新闻发布系统的信息处理过程。
1.2课题研究目标和意义
本次课题研究目标,以在生活中的实际操作中对于新闻发布系统的具体操作需求进行分析和探讨,通过不同的角度去分析一个新闻发布系统的开发过程会遇到什么问题,并通过不断的讨论和测试去实现每一个需求。
达到满足用户和管理员不同身份的操作需求,以具体的实例来实现一个完整的新闻发布系统的信息交互工程。
此次课题的研究意义在于提高自己对于web项目开发的实践能力,使自己能过通过此次研究了解到一个系统的开发过程,需要哪些准备,需要哪些知识,哪些流程以及开发结束后的调试工作。
本次设计的新闻发布系统使用基于MVC模式的下的JSP/Servlet技术开发,通过此次的设计能够对MVC模式框架的深入体会,能够得到举一反三的效果,以具体的实例在开发过程过框架的搭建来实现每一个功能。
做出一个动态新闻发布系统,以及对其的管理和使用。
该新闻系统具有一般新闻系统的功能,该系统是基于MVC模式的实现,开发设计,主要实现对公司新闻的发布与管理功能,对新闻容信息的浏览阅读等。
1.3课题容
新闻发布系统的主要用途是作为信息的发布以及管理,涉及到前台用户对新闻信息的浏览、评论和后台新闻的管理。
主要是分前台浏览和后台管理两个大的模块。
前台页面是对所有用户均开放除了可以允许所有游客进入浏览新闻外,会员用户和以通过注册登录进行对新闻的评论以及留言。
后台管理部分一般是通过隐藏页面进入,并做权限验证,只有使用了正确的账号和密码,通过了权限验证才能进入后台管理和发布新闻,一般只允许管理员的登录不允许注册。
在前台新闻浏览模块,一般需要对新闻进行分门别类展示,并需要通过栏目导航进入特定的新闻信息分类模块。
在首页除了显示导航栏目外,还需要显示这些栏目的最新信息;列表以及推荐新闻信息列表,并能提供一些新闻检索功来实现用户根据个人喜好查看自己赶兴趣的新闻。
同时还应提供用户评论、留言功能,使得用户可以对新闻信息发表自己的看法和意见。
后台管理方面,必须由合法的管理者来管理新闻的的发布修改删除等,以及需要对会员用户和新闻分类进行管理,所以系统也需要一个为管理员用户登录注销的模块。
第二章系统需求分析
2.1需求说明
该系统在性能功能上应达到如下需求:
操作简单、界面友好、完全框架式的页面布局,使得新闻的录入工作更简便,许多选项包括新闻分类、新闻列表、新闻出处等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。
对常见的新闻管理的各个方面:
新闻录入、浏览、删除、修改、搜索等方面都大体实现,实现了对即时新闻的管理要求。
通过相关调查,要求该系统应具有以下功能:
1.通过网络浏览各类新闻及相关信息。
2.新闻能分类显示相关信息。
3.提供站新闻的搜索功能。
4.支持其它的友情。
5.为后台管理提供管理入口。
6.后台编辑个类新闻并且管理新闻信息。
2.2用户功能分析
对于本系统,用户共分为二:
会员用户、管理员,各有不同的权限。
(一)会员用户:
此类用户具有以下权限:
1.注册会员。
2.登陆会员。
3.浏览前台网页。
4.阅读已发布新闻、留言、会员评论。
5.发表留言、评论。
(二)管理员:
此类用户具有以下权限:
1.浏览所有网页。
2.具有管理普通用户的权限。
3.发布公告信息,可供用户浏览。
4.对不合适和没用的评论进行删除。
5.向数据库导入各用户的注册信息信息。
6.登陆后可修改个人密码。
7.可以删除任何一个普通用户的所有信息。
2.3用例图
浏览者和管理员的具体分工操作所涉及到的功能(如图2.1)所示。
图2.1用例图
2.4结构图
根据需求分析得出所需要的功能,和结构得出系统结构(如图2.1)所示。
第三章总的设计方案
3.1开发工具的选用和介绍
3.1.1JDK环境
JDK环境,这是Java系统编译运行时必须配置的环境,只有在此环境下Java代码才能够执行出结果,并且在本次设计中我们选用的Tomcat服务器的配置也必须在配置好JDK环境之后才能运行,所以本次设计我们选用了1.6的版本进行开发。
3.1.2MySQL
MySQL数据库管理系统是用于关联数据库并将数据保存到所创建的表中,在本次设计中涉及到数据的存储过程,所以必须要有数据库管理系统来进行管理。
目前来说MySQL一般比价适用于中小型企业的,如果数据规模非常庞大一般会选择Oracle数据库管理系统进行开发。
本次设计数据非常有限所以选择MySQL,除此之外他还有便于学习,成本低,开源等特点。
3.1.3WEB服务器Tomcat
Tomcat是Apache底下的一个项目,它拥有免费、开放源码的特点因此Tomcat成为许多程序开发、调试时所选择的服务器,在本次设计过程中主要使用它来进行程序的调试。
同时在本次设计中需要用到JSP和Servlet技术,Tomcat对于这些技术也是兼容的,因此它成为了我对服务器选择的首选。
在本系统中我们选用稳定版本Tomcat6.0进行开发
3.1.4Struts标签库
Struts框架提供了相当强大的标签库,根据这些标签库的容,程序员在编写网页中的代码时,可以大大的减少代码的编写量,从而使网页中的代码更加简洁。
Struts提供了5种标签库文件,它们分别为HTML标签、Bean标签、Logic标签、Nested
标签。
3.1.5Hibernate
Hibernate框架是操作数据库的持久化框架,它的值对象本质上是持久化对象的前身,也就是说,在Hibernate框架中,值对象就能够表示一条数据表中的记录。
Hibernate之所以是优秀的框架,就是在于它所用持久化类的对象其本身是一个简单的Java类的值对象。
这样的优点是在纯粹java类的情况下,持久化类的对象直接就可以在业务逻辑层和服务器表示层被使用,不涉及高耦合的问题,因此在业务逻辑层中只要对值对象进行操作,然后返回这个对象即可。
3.1.6集成开发工具MyEclipse
是目前最流行的Java集成开发工具。
MyEclipse一经出现就以其快速、丰富的特性赢得了认可,其主要的属性有快速的性能、重构性能、快速修复错误、调整组织导入包、弹出窗口进行代码自动装配并且它能够很好地与MySQL、Tomcat进行集成。
本系统中我们选用MyEclipse8.5。
3.2开发技术的介绍
3.2.1JSP页面技术
JSP产生于Servlet之后,主要是为了解决Servlet中输出HTML代码效率低的问题而产生的。
JSP技术比较简单,类似于ASP、PHP这些脚本语言。
JSP的技术主要是由以下两个部分组成:
JSP的基本语法:
两个注释、3个脚本元素、8个动作指令。
JSP的九大置对象:
request请求对象、response响应对象、pageContext页面上下文对象、session会话对象、application应用程序对象、out输出对象、config配置对象、page页面对象和exception例外对象。
3.2.2Servlet技术
Servlet产生于JSP技术之前,它最大的特点就是基于线程。
与传统的CGI相比,每一个CGI请求都会产生一个新的进程,而每一个Servlet请求都只会产生一个线程,这对于系统的利用率来说是一场革命。
Servlet是MVC开发的技术,所有基于J2EE的MVC框架都离不开Servlet。
通常Servlet用于进行系统的初始化、服务拦截、过滤等。
3.2.3HTML标签语言和JavaScript脚本语言的编写
HTML:
超级文本标记语言是标准通用标记语言下的一个应用,也是一种规,一种标准,它通过标记符号来标记要显示的网页中的各个部分。
Javascript是由Netscape公司创造的一种脚本语言。
为便于推广,被定为javascript,但是javascript与java是两门不相干的语言,作用也不一样。
作为一门独立的编程语言,javascript可以做很多的事情,但它最主流的应用还是在Web上——创建动态网页(即网页特效)。
提要:
Javascript是学习脚本语言的首选。
她兼容性好,绝大多数浏览器均支持Javascript,而且她功能强大,实现简单方便,入门简单,即使是程序设计新手也可以非常快速容易地使用JavaScript进行简单的编程。
3.3开发框架MVC的概述
3.3.1MVC模式简介
MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
MVC(模型Model-视图View-控制器Controller)是一种设计模式。
MVC模式作为系统的搭建框架,采用这种模式的好处是可以使每一层次的作用分工明确,它强制性的使应用程序的输入、处理和输出分开。
使用MVC应用程序被分成三个核心部件:
模型(model)、视图(model)、控制器(controller)。
本文采用的是JSP+Servlet+DAO三层模式来搭建整个框架。
3.3.2编写Hibernate数据库配置文件
Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性。
它同时支持XML格式的配置文件和传统的properties文件配置方式,当前系统采用的是XML型配置文件。
XML配置文件提供了更简易的结构和更强的配置能力,可以直接对映射文件加以配置并由Hibernate自动加载。
而在properties文件中则无法做到这点,必须在程序过编写进行映射文件加载。
相关主要代码如下:
xmlversion='1.0'encoding='UTF-8'?
>
DOCTYPEhibernate-configurationPUBLIC
"-//Hibernate/HibernateConfigurationDTD3.0//EN"
"
.mysql.jdbc.Driver
jdbc:
mysql:
//localhost:
3306/news_publish
org.hibernate.dialect.MySQL5Dialect
3.3.3编写数据持久化类
当前系统是一个数据库持久化类的名称为objectDao。
开发当前系统使用了Hibernate框架和Struts框架的整合技术,在编写数据库持久化类的代码中,分别定义了SessionFactory类、Sesstion类和Transaction类的属性,之后通过静态方法取得对数据库的操作,最后根据对象分别实现对数据表的添加、修改、删除、和查询操作。
相关的主要代码如下:
NewsDao.java
package.caojun.dao;
importjava.util.List;
import.caojun.model.News;
publicinterfaceNewsDAO{
publicvoidcreateNews(Newsnews);
publicvoidupdateNews(Newsnews);
publicvoiddeleteNews(Newsnews);
/**
*获取所有新闻
*return
*/
publicList
publicList
publicNewsqueryNews(intnewsID);
/**
*根据类别获取所有新闻
*paramnewsTypeID
*return
*/
publicList
}
NewsTypeDao.java:
package.caojun.dao;
importjava.util.List;
import.caojun.model.NewsType;
publicinterfaceNewsTypeDAO{
publicvoidcreateNewsType(NewsTypenewsType);
publicvoidupdateNewsType(NewsTypenewsType);
publicvoiddeleteNewsType(NewsTypenewsType);
publicList
publicList
publicNewsTypequeryNewsType(intnewsTypeID);
}
userDao.java
package.caojun.dao;
importjava.util.List;
import.caojun.model.User;
publicinterfaceUserDAO{
publicvoidcreateUser(Useruser);
publicvoidupdateUser(Useruser);
publicvoiddeleteUser(Useruser);
publicList
publicUserqueryUser(intid);
publicUserqueryUser(Stringusername);
publicList
}
3.4新闻类别的实现类
在当前系统中,新闻类别主要分为:
这几大类是固定的,但是它们的小类别不是固定的,需要后台管理员进行维护。
新闻类别实现类名称为:
NewsTypeAction.java该类继承了ActionSupport.java
3.4.1MVC模式框架图
第四章数据库设计
4.1设计步骤
1.根据需求分析对所需存储数据进行分类,建立数据库表存储、归类所需数据,确定表中各属性的类型。
2.在数据库表建立完成后还要建立各个表之间的连接关系,确定表与表之间是主外键的关系还是多对多、一对多或是一对一等的关系。
3.分析前台与后台的功能建立用户的权限关系。
4.2数据库表的设计
根据用户需求,共创建了六个表,分别为:
管理员信息表admin、会员信息表users、文章信息表newsinfo、评论信息表replys、文章频道表newstypeinfo、会员留言表leavemessage。
以下是新闻发布系统的数据库表结构的详细描述:
4.2.1管理员信息表
管理员信息表admin包含着管理员在登录时候所需的账号、密码,还有管理员的信息,管理员的Id作为主键,在查询是可通过Id来查找管理员的信息。
(如表4.1)
表4.1管理员信息表
字段名
字段说明
类型
长度
允许空值
备注
adminId
管理员Id
int
11
否
主键
adminName
管理员用户
varchar
20
否
adminPass
管理员密码
varchar
20
是
adminInfo
信息
text
是
4.2.2会员信息表
会员信息表users包含着会员注册时候所需要的填写的所有信息,以及会员Id设为主键,管理员在查找会员信息时可以根据Id来查找。
(如表4.2)
表4.2会员信息表
字段名
字段说明
类型
长度
允许空值
备注
usersId
会员Id
int
11
否
主键
usersName
会员用户
varchar
20
否
usersPass
会员密码
varchar
20
是
usersEmail
varchar
50
是
usersInfo
信息
text
是
4.2.3文章信息表
文章信息表newsinfo包含着文章发表时候的全部信息,以及文章Id设为主键用于在查找文章时可以根据此标识来查找出文章的所有信息。
同时还在表中设有管理员Id、文章分类Id作为外键,用于对管理员信息表、文章分类表进行关联。
字段名
字段说明
类型
长度
允许空值
备注
newsInfoId
文章Id
int
11
否
主键
newsInfoTitle
文章标题
varchar
100
是
newsInfoDescribe
文章描述
text
是
newsInfoContent
文章容
longtext
是
newsInfoTime
创建时间
datetime
是
newsAuthor
文章作者
varchar
40
是
newsITypeId
文章分类Id
int
11
是
外键
newsInfoState
int
11
是
第五章代码设计
5.1.1JSP文件的导入
5.1系统开发准备工作
在系统开发前我们需要先倒入本项目所需要的JSP模板,这里需要说明的是在一个实际的项目开发过程中会分为负责JSP界面设计的美编,以及负责JAVA软件开发的软件工程师。
在本次设计中我们主要是完成软件设计部分的功能,所以开发前需导入一个JSP文件模板。
5.1.2JDBC连接数据库
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
第六章系统调试
6.1前台页面调试
新闻发布系统有两种用户:
会员用户(包含游客)和管理员,分别有不同的权限,但都是从同一界面登陆,此系统首页采用DIV+CSS框架,使得页面看起来美观舒适。
能自动获取系统当前时间,展示新闻列表容和广告等信息。
用户只要在浏览器地址栏输入改项目的地址,即可访问该系统的相关信息;需要说明的是:
因为该系统并未真正发布成正规的,只是将项目部署到了Tomcat服务器上面;其他机子需要访问必须在同一个局域网中访问,在浏览器地址栏中输入:
服务器机子地址:
8080/news_publish_system/jsp/login.jsp/既可访问项目。
相关的代码如下:
<%pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
<%taglibprefix="s"uri="/struts-tags"%>
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
#apDiv1{
position:
absolute;
width:
300px;
height:
115px;
z-index:
1;
left:
414px;
top:
189px;
text-align:
center;
border:
1pxsolidgreen;
}
#apDiv2{
position:
absolute;
width:
374px;
height:
115px;
z-index:
2;
left:
369px;
top:
68px;
text-align:
center;
font-size:
x-large;
font-family:
"华文行楷";
color:
#903;
}
actionerrorcssStyle="color: red;"/> 用户名:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 生活 实际操作 对于 新闻 发布 系统 具体操作 需求 分析 报告