生活中实际操作对于新闻发布系统的具体操作需求的分析报告.doc_第1页
生活中实际操作对于新闻发布系统的具体操作需求的分析报告.doc_第2页
生活中实际操作对于新闻发布系统的具体操作需求的分析报告.doc_第3页
生活中实际操作对于新闻发布系统的具体操作需求的分析报告.doc_第4页
生活中实际操作对于新闻发布系统的具体操作需求的分析报告.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

生活中实际操作对于新闻发布系统的具体操作需求的分析报告第一章 绪 论1.1课题背景数字信息时代使人们的交流方式发生了很大的变化,新闻发布系统又名信息发布系统,是一个以计算机网络平台构建起来的新闻发布系统,它可以对网络上所有的信息进行管理分类,还能系统化,标准化的发布到网站上的一种网站应用程序,网站信息通过一个简单的界面加入数据,然后通过已有的网页模板格式与审核流程发布到网站上。它的出现大大减轻了网站更新维护的工作量,通过网络数据库的引用,将网络的更新工作简化到只需要录入文字和上传图片,从而使网站的更新的速度大大缩短,从而大大加快了信息的传播速度。目前,对于新闻发布系统的开发技术有很多种,比如PHP技术、ASP技术、JSP技术、NET技术等,成熟的新闻发布系统有很多,如著名的V7 Content Management Suite(西门子公司采用的技术)等以及开源的产品也得到了广泛的应用,如Open CMS等。本课程我们将学习以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.1 JDK环境JDK环境,这是Java系统编译运行时必须配置的环境,只有在此环境下Java代码才能够执行出结果,并且在本次设计中我们选用的Tomcat服务器的配置也必须在配置好JDK环境之后才能运行,所以本次设计我们选用了1.6的版本进行开发。3.1.2 MySQL MySQL数据库管理系统是用于关联数据库并将数据保存到所创建的表中,在本次设计中涉及到数据的存储过程,所以必须要有数据库管理系统来进行管理。目前来说MySQL一般比价适用于中小型企业的,如果数据规模非常庞大一般会选择Oracle数据库管理系统进行开发。本次设计数据非常有限所以选择MySQL,除此之外他还有便于学习,成本低,开源等特点。3.1.3 WEB服务器TomcatTomcat是Apache底下的一个项目,它拥有免费、开放源码的特点因此Tomcat成为许多程序开发、调试时所选择的服务器,在本次设计过程中主要使用它来进行程序的调试。同时在本次设计中需要用到JSP和Servlet技术,Tomcat对于这些技术也是兼容的,因此它成为了我对服务器选择的首选。在本系统中我们选用稳定版本Tomcat6.0进行开发3.1.4 Struts标签库Struts框架提供了相当强大的标签库,根据这些标签库的内容,程序员在编写网页中的代码时,可以大大的减少代码的编写量,从而使网页中的代码更加简洁。Struts提供了5种标签库文件,它们分别为HTML标签、Bean标签、Logic标签、Nested标签。3.1.5 Hibernate Hibernate框架是操作数据库的持久化框架,它的值对象本质上是持久化对象的前身,也就是说,在Hibernate框架中,值对象就能够表示一条数据表中的记录。Hibernate之所以是优秀的框架,就是在于它所用持久化类的对象其本身是一个简单的Java类的值对象。这样的优点是在纯粹java类的情况下,持久化类的对象直接就可以在业务逻辑层和服务器表示层被使用,不涉及高耦合的问题,因此在业务逻辑层中只要对值对象进行操作,然后返回这个对象即可。3.1.6 集成开发工具MyEclipse是目前最流行的Java集成开发工具。MyEclipse一经出现就以其快速、丰富的特性赢得了认可,其主要的属性有快速的性能、重构性能、快速修复错误、调整组织导入包、弹出窗口进行代码自动装配并且它能够很好地与MySQL、Tomcat进行集成。本系统中我们选用MyEclipse8.5。3.2 开发技术的介绍3.2.1 JSP页面技术JSP产生于Servlet之后,主要是为了解决Servlet中输出HTML代码效率低的问题而产生的。JSP技术比较简单,类似于ASP、PHP这些脚本语言。JSP的技术主要是由以下两个部分组成:JSP的基本语法:两个注释、3个脚本元素、8个动作指令。JSP的九大内置对象:request请求对象、response响应对象、pageContext页面上下文对象、session会话对象、application应用程序对象、out输出对象、config配置对象、page页面对象和exception例外对象。3.2.2 Servlet技术Servlet产生于JSP技术之前,它最大的特点就是基于线程。与传统的CGI相比,每一个CGI请求都会产生一个新的进程,而每一个Servlet请求都只会产生一个线程,这对于系统的利用率来说是一场革命。Servlet是MVC开发的技术,所有基于J2EE的MVC框架都离不开Servlet。通常Servlet用于进行系统的初始化、服务拦截、过滤等。3.2.3 HTML标签语言和JavaScript脚本语言的编写HTML:超级文本标记语言是标准通用标记语言下的一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。Javascript是由Netscape公司创造的一种脚本语言。为便于推广,被定为javascript,但是javascript与java是两门不相干的语言,作用也不一样。作为一门独立的编程语言,javascript可以做很多的事情,但它最主流的应用还是在Web上创建动态网页(即网页特效)。提要:Javascript是学习脚本语言的首选。她兼容性好,绝大多数浏览器均支持Javascript,而且她功能强大,实现简单方便,入门简单,即使是程序设计新手也可以非常快速容易地使用JavaScript进行简单的编程。3.3 开发框架MVC的概述3.3.1 MVC模式简介MVC全名是Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC(模型Model-视图View-控制器Controller)是一种设计模式。 MVC模式作为系统的搭建框架,采用这种模式的好处是可以使每一层次的作用分工明确,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型(model)、视图(model)、控制器(controller)。本文采用的是JSP+Servlet+DAO三层模式来搭建整个框架。33.2 编写Hibernate数据库配置文件 Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性。它同时支持XML格式的配置文件和传统的properties文件配置方式,当前系统采用的是XML型配置文件。XML配置文件提供了更简易的结构和更强的配置能力,可以直接对映射文件加以配置并由Hibernate自动加载。而在properties文件中则无法做到这点,必须在程序中通过编写进行映射文件加载。相关主要代码如下: com.mysql.jdbc.Driver jdbc:mysql:/localhost:3306/news_publish root org.hibernate.dialect.MySQL5Dialect true 3.3.3编写数据持久化类当前系统是一个数据库持久化类的名称为objectDao。开发当前系统使用了Hibernate框架和Struts框架的整合技术,在编写数据库持久化类的代码中,分别定义了SessionFactory类、Sesstion类和Transaction类的属性,之后通过静态方法取得对数据库的链接操作,最后根据链接对象分别实现对数据表的添加、修改、删除、和查询操作。相关的主要代码如下:NewsDao.javapackage com.caojun.dao;import java.util.List;import com.caojun.model.News;public interface NewsDAO public void createNews(News news);public void updateNews(News news);public void deleteNews(News news);/* * 获取所有新闻 * return */public List queryAllNews();public List queryAllNews(int pageSize, int pageNow);public News queryNews(int newsID);/* * 根据类别获取所有新闻 * param newsTypeID * return */public List queryAllNews(int newsTypeID);NewsTypeDao.java:package com.caojun.dao;import java.util.List;import com.caojun.model.NewsType;public interface NewsTypeDAO public void createNewsType(NewsType newsType);public void updateNewsType(NewsType newsType);public void deleteNewsType(NewsType newsType);public List queryAllNewsTypes();public List queryAllNewsTypes(int pageSize, int pageNow);public NewsType queryNewsType(int newsTypeID);userDao.javapackage com.caojun.dao;import java.util.List;import com.caojun.model.User;public interface UserDAO public void createUser(User user);public void updateUser(User user);public void deleteUser(User user);public List queryAllUsers();public User queryUser(int id);public User queryUser(String username);public List queryUser(int pageSize, int pageNow);3.4新闻类别的实现类在当前系统中,新闻类别主要分为:这几大类是固定的,但是它们的小类别不是固定的,需要后台管理员进行维护。新闻类别实现类名称为:NewsTypeAction.java该类继承了ActionSupport.java3.4.1 MVC模式框架图第四章 数据库设计4.1设计步骤1.根据需求分析对所需存储数据进行分类,建立数据库表存储、归类所需数据,确定表中各属性的类型。2.在数据库表建立完成后还要建立各个表之间的连接关系,确定表与表之间是主外键的关系还是多对多、一对多或是一对一等的关系。3.分析前台与后台的功能建立用户的权限关系。4.2 数据库表的设计根据用户需求,共创建了六个表,分别为:管理员信息表admin、会员信息表users、文章信息表newsinfo、评论信息表replys、文章频道表newstypeinfo、会员留言表leavemessage。以下是新闻发布系统的数据库表结构的详细描述:4.2.1 管理员信息表管理员信息表admin包含着管理员在登录时候所需的账号、密码,还有管理员的信息,管理员的Id作为主键,在查询是可通过Id来查找管理员的信息。(如表4.1)表4.1 管理员信息表字段名字段说明类型长度允许空值备注adminId管理员Idint11否主键adminName管理员用户varchar20否adminPass管理员密码varchar20是adminInfo信息text是4.2.2 会员信息表 会员信息表users包含着会员注册时候所需要的填写的所有信息,以及会员Id设为主键,管理员在查找会员信息时可以根据Id来查找。(如表4.2)表4.2 会员信息表字段名字段说明类型长度允许空值备注usersId会员Idint11否主键usersName会员用户varchar20否usersPass会员密码varchar20是usersEmailE-mailvarchar50是usersInfo信息text是4.2.3 文章信息表文章信息表newsinfo包含着文章发表时候的全部信息,以及文章Id设为主键用于在查找文章时可以根据此标识来查找出文章的所有信息。同时还在表中设有管理员Id、文章分类Id作为外键,用于对管理员信息表、文章分类表进行关联。字段名字段说明类型长度允许空值备注newsInfoId文章Idint11否主键newsInfoTitle文章标题varchar100是newsInfoDescribe文章描述text是newsInfoContent文章内容longtext是newsInfoTime创建时间datetime是newsAuthor文章作者varchar40是newsITypeId文章分类Idint11是外键newsInfoStateint11是第五章 代码设计5.1.1 JSP文件的导入5.1 系统开发准备工作在系统开发前我们需要先倒入本项目所需要的JSP模板,这里需要说明的是在一个实际的项目开发过程中会分为负责JSP界面设计的美编,以及负责JAVA软件开发的软件工程师。在本次设计中我们主要是完成软件设计部分的功能,所以开发前需导入一个JSP文件模板。5.1.2 JDBC连接数据库JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。第六章 系统调试6.1前台页面调试新闻发布系统有两种用户:会员用户(包含游客)和管理员,分别有不同的权限,但都是从同一界面登陆,此系统首页采用DIV+CSS框架,使得页面看起来美观舒适。能自动获取系统当前时间,展示新闻列表内容和广告等信息。用户只要在浏览器地址栏输入改项目的地址,即可访问该系统的相关信息;需要说明的是:因为该系统并未真正发布成正规的网站,只是将项目部署到了Tomcat服务器上面;其他机子需要访问必须在同一个局域网中访问,在浏览器地址栏中输入:http:/服务器机子地址:8080/news_publish_system/jsp/login.jsp/ 既可访问项目。相关的代码如下: 登录 #apDiv1 position:absolute;width:300px;height:115px;z-index:1;left: 414px

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论