2024年4月19日发(作者:)
基于web的新闻后台管理系统的设计与实现
XXX
(XXXXXXXXXX,XX XX XXXXX)
摘 要
随着现代网络信息的发展,人们的生活对信息的传递和要求越来越高。尤其是
网络新闻已经融入到了人们的日常生活的方方面面,网络改变生活方式,从网上获
取新闻信息成为了一种必须,为满足某些用户对新闻的特殊需求,开发了该新闻管
理系统。
本新闻系统采用模块化面向对象设计思想,采用Java与JSP技术,通过SSH框架
整合进行开发,实现了新闻的数据库写入,新闻信息的管理,其中包括新闻的搜索、
添加、修改及删除;实现了网站管理员的注册、登录,实现了新闻浏览者的前台搜
索和查阅功能,实现了新闻的详细浏览,新闻发布等功能。
关键字:
JSP网站开发;web数据库;新闻发布系统
I
News Background Managing System based on WEB
Deng Riqin
(College of Information Science and Engineering,Jishou University,Jishou,Hunan 416000)
Abstract
Along with the development of modern network information, and people's life of
information transfer and demand is higher and higher. Especially the network news has
been integrated into the People's Daily life, To meet the special need,this news release
system is developed .
This News Background Managing System uses the modulation object-oriented design
concept, uses Java and the Jsp technology. This news release system realizes the news to
the database, the news information management, including news search, add, modify and
delete; Realize the site manager , login, and can judge manager registered and logged on
to ensure the legitimacy of the normal use of the site and management; The news of the
front desk to realize your visitors search and access to function, to achieve the news, press
releases and browse detailed changes in the judgment.
Key words:JSP website development;web database;press release system
II
目录
第一章 绪论 ..................................................................................................................... 1
1.1引言 ......................................................................................................................... 1
1.2系统的研究目的与意义 ......................................................................................... 1
1.3开发工具的选用与介绍 ......................................................................................... 2
1.3.1 JSP基础 ........................................................................................................ 2
1.3.2 JSP页面的结构 ............................................................................................ 3
1.3.3JSP的内置对象 ............................................................................................. 4
1.3.4 JSP中存储数据过程 .................................................................................... 4
1.3.5 Mysql的结构 ............................................................................................... 6
1.3.6 Java开发环境的搭建 .................................................................................. 7
1.3.7 MyEclipse的使用介绍 ................................................................................ 8
1.4可行性分析 ........................................................................................................... 11
第二章 需求分析 .............................................................................................................. 13
2.1需求说明 ............................................................................................................... 13
2.2开发环境 ............................................................................................................... 13
2.3管理员功能模块 ................................................................................................... 13
2.4数据流图 ............................................................................................................... 14
2.5数据字典 ............................................................................................................... 14
2.6用例图 ................................................................................................................... 16
2.7系统总体框架图 ................................................................................................... 16
2.8实体关系图 ........................................................................................................... 17
第三章 系统功能概述 ...................................................................................................... 20
3.1系统功能分析 ....................................................................................................... 20
3.2系统的概要设计 ................................................................................................... 20
3.3系统模块划分 ....................................................................................................... 20
第四章 系统分析与总体设计 .......................................................................................... 22
4.1总体结构 ............................................................................................................... 22
4.2各页面功能分配 ................................................................................................... 23
4.3数据库设计 ........................................................................................................... 23
4.4创建数据表 ........................................................................................................... 23
第五章 详细设计与实现 .................................................................................................. 28
5.1目录结构与公用模块介绍 ................................................................................... 28
5.2管理系统登录界面 ............................................................................................... 30
5.3管理系统主页面 ................................................................................................... 33
III
5.4添加新管理员 ....................................................................................................... 33
5.5管理员关系查看以及管理 ................................................................................... 35
5.6新闻类型添加 ....................................................................................................... 36
5.7添加文字新闻 ....................................................................................................... 36
5.8浏览、管理文字新闻 ........................................................................................... 37
5.9管理员个人信息的管理 ....................................................................................... 38
第六章 测试 ...................................................................................................................... 40
6.1系统测试 ............................................................................................................... 40
6.2单元测试 ............................................................................................................... 40
参考文献 ............................................................................................................................ 43
IV
基于Web的新闻后台管理系统 绪论
第一章 绪论
1.1引言
新闻发布系统是新闻传媒不可缺少的部分,它的作用对于新闻的决策者与管理
者来说都有着重要意义,所以新闻发布系统应该能够为用户提供充足的信息与快捷
的查询手段。但是一直以来人们都是使用传统的人工方式来管理文件和档案,这种
管理模式有着许多缺点,例如:效率很低、保密性很差,另外时间一长,将产生大量
的文件与数据,这对于查找、更新与维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻
认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对网上新闻发布进行管理,具有人工管
理所无法比拟的优点.例如:检索效率高、查找便捷、具有高可靠性、存储数据量大、
保密效果好、寿命长久、成本低廉等。这些优点使得其能够极大地提高网上新闻发
布的效率,时效性好,也是企业结构的科学化、正规化的管理,与世界接轨的必备
条件。因此,开发这样一套新闻发布管理系统成为很有必要的事情。
在我国传统的信息传递方式不外乎是通过电视、广播、报纸等媒体传播信息,
但通过这类媒体的传递工作常常会受到地域与时间的影响而无法达到预期的效果。
这样的机制已经不能适应时代的发展,因为它浪费了许多人力与物力来制作与发表
信息,在信息时代这种传统的传播方式必然被计算机为基础的信息管理所取代。随
着网络的应用逐渐普及到信息传递与商业行为,大家将焦点渐渐地集中到因特网的
身上,由于网络具有实时性,天生就是一种极好的传播媒体,这样就解决了因为地
域与时间等带来的问题,我们可以很方便、快捷得从因特网上查看我们所需要的新
闻。因此,我们可以通过在网站上成立实时新闻中心,将企业与产品等各种最新消
息公布到网站上,实时地发送给所有用户及消费者。
1.2系统的研究目的与意义
当前大部分的新闻传媒系统实现了网络化与信息化,这样大大提高了办公的效
率。当然这样不仅提高了办公效率,而且节省了大量的资源,从而使企业得到了进
一步的发展。
另外,点击率是网站存活的关键,因此只有最大程度的满足用户的需求,提高
点击率,网站才能存活的更久。我们站在用户的立场上为用户提供更切实可靠的需
求。另一方面,把后台的工作分的更加细致,让工作人员能通过一键操作完成任务,
省时省力,减少财力、人力、物力的浪费,为新闻传媒业实现数字化与网络化提供
了极大的帮助。
信息化的现代社会,人们已经离不开了网络,网络已经成为人与人之间交流的
1
基于Web的新闻后台管理系统 绪论
一种形式,它能够把事情的复杂化转为简单。新闻发布系统的提出对电视,报纸,
广播传统的新闻媒介影响很大,从此以后网络也充当了一个重要的新闻媒介的功能。
新闻发布系统作为网络传播的核心系统,其重要性是越来越重要:一方面,它提供
一个新闻管理与发布的功能;另一方面,现在的新闻发布要求实现与普通的用户实
现交互,用户可以很方便地参加一些调查与相关新闻的评论。这使得大家可以方便
地在一个网络平台上交流思想,共同探讨一些关注话题。新闻发布者要注意新闻的
严肃性与真实性,太过追求实效性新鲜感又不明辨,此外很多国内网站转载他人新
闻在网络上发布,侵犯了原创者的知识产权。
新闻发布系统是绝大多数商业性网站最常用的系统,它的一个基础作用就是为
企业提供信息发布的平台。使用JSP技术可以动态生成新闻静态页面,可以使新闻
的发布与管理变得很轻松。网站管理维护人员只需设置标题,内容与图片等新闻信
息元素就可以了,系统将自动生成对应的网页。并且系统可以于用户交互,用户可
以很方便地参加评论与交流。在新闻发布系统中还使用了Mysql数据库,将能大大
减轻维护人员的工作量,使系统便于维护与管理。
新闻发布系统作为一个新时代的产物,信息量巨大,早已超出了国界,使遨游
世界不再是神话。它摒弃了传统媒体的不足,正在以不可预知的速度向前发展。
1.3开发工具的选用与介绍
1.3.1 JSP基础
JSP是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态技术标
准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)
与JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及
发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,
网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即
使客户浏览器端不支持Java,也可以访问JSP网页。
JSP全名为java server page,其根本是一个简化的Servlet设计,他实现了Html
语法中的java扩张(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的,
通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web
服务器在遇到访问JSP的网页发出的请求时,开始执行JSP中的程序段,然后就连
同JSP文件中的HTML代码和执行的结果一起返回给客户端。插入的Java程序段可
以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP技术使用Java编程语言编写类XML的tags与scriptlets,来封装产生动态网
页的处理逻辑。网页还能通过tags与scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页制作逻辑与网页的设计的显示并且分离出来,支持可以复用的基于组件的
2
基于Web的新闻后台管理系统 绪论
设计,使得基于Web的应用程序的项目开发变得极为便捷。 JSP(JavaServer Pages)
是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
JSP页面由HTML代码与嵌入其中的Java代码所组成。服务器在页面被客户端
请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览
器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet
与JSP配合才能完成。JSP技术具备Java的简洁易用,完全的面向对象,跨平台性
且,安全性,主要面向internet的所有特点。
1.3.2 JSP页面的结构
JSP本质上就是Servlet。Servlet更善于执行Java代码;JSP更善于向客户端输出
文本(HTML/XML/JSON…)。所有的JSP在第一次被请求时(之后的请求不再有此过
程),会被Web容器转换为一个ServletJava类文件,立即进行编译得到Servlet,接下
来的生命周期与普通Servlet一样了。
图1.1 MVC图
JSP中嵌入Java的方式
(1)<% 代码; %>: 嵌入式Java代码块,一个块中可以有多条Java执行语句
(2)<%=表达式 %>: 输出表达式,作用类似于 <% n(表达式); %>
(3)<%! %>: 成员变量/成员方法定义
(4)<%-- --%>: JSP注释,其中的语句不会执行,也不会发送给客户端(与HTML
注释不同)
(5)<%@ %>: JSP页面指令
JSP转换为Servlet类的过程中,上述内容的转换形式:
(1)所有的HTML/XML标签 service{ (“XML/HTML”); }
(2)<% 执行语句; %> service{ 执行语句; }
3
基于Web的新闻后台管理系统 绪论
(3)<%=表达式 %> service{ (s ); }
(4)<%! 成员声明 %> 直接转换为Servlet类的成员属性/方法
(5)<%-- JSP注释 --%> 转换为Servlet过程中会被删除
(6)<%@ 指令 %> 辅助转换Servlet类的内容
1.3.3JSP的内置对象
内置对象,就是在JSP中无需声明而直接使用的变量——这些变量都是jsp转换
成Servlet类中的service方法内的局部变量。
表1.3 Jsp九大内置对象表
作用 Servlet中如何获取
封装着客户端
HttpServletRequest service方法的参数
的所有信息
用于向客户端
response HttpServletResponse service方法的参数
发出响应数据
可用于向客户
PrintWriter out =
out JspWriter 端发送字符响
ter();
应数据
page就是page = this
page Object = this
Servlet对象
config ServletConfig 对象名
vletConfig()
——
pageContext PageContext request
session 会话
application 应用
Throwable 用于显示上一
必须是isErrorPage=个页面跳转过
exception
“true”的JSP才有来时产生的异
此内置对象 常信息
对象类型
1.3.4 JSP中存储数据过程
图1.2 四个范围仓库模型图
(1)页面范围(PageScope)——pageContext,数据可以在当前页面、当前页面包含的页
4
基于Web的新闻后台管理系统 绪论
面中使用;任何其它页面都不能使用
·保存数据:ribute(“key”, obj);
·取出数据:Object obj = ribute(“key”);
·删除数据:Attribute(“key”);
(2)请求范围(RequestScope)——request,数据可以在当前页面、当前页面包含的页面、
当前页面请求转发到的下一个页面(两个页面使用的是同一个request对象)中使用—
—用于在有跳转关系的两个页面间传递数据 uestDispatcher(“下一
页面地址”).forward(request, response);
·保存数据:ribute(“key”, obj);
·取出数据:Object obj = ribute(“key”);
·删除数据:Attribute(“key”);
(3)会话范围(SessionScope)——session,一个会话就是一个浏览器在一定的时间内与
服务器的多次交互过程,其中可能发生多次不相关的请求-响应。服务器同一时刻可
能保持着与多个客户端的会话。Session的本质:是Tomcat在服务器端为每一个不同
的客户端分配的唯一的存储空间(具有唯一的ID号)——用于在多个不相关的页面间
传递数据(被同一个客户端在一段时间内访问),帮助服务器识别不同的客户端;典型
应用:记录用户登录名、记录验证码、浏览记录等
·保存数据:ribute(“key”, obj);
·取出数据:Object obj = ribute(“key”);
·删除数据:Attribute(“key”);
(4)应用范围(ApplicationScope)——application,
整个Web应用范围,任何客户端保存的数
据,可以在接下来的任何时间点被任何的客户端在任何页面访问到——直到Web应用被取消部
署。
·保存数据:ribute(“key”, obj);
·取出数据:Object obj = ribute(“key”);
·删除数据:Attribute(“key”);
图1.3 应用范围模型实例图
5
基于Web的新闻后台管理系统 绪论
1.3.5 Mysql的结构
Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的
(1) Connectors指的是不同语言中与SQL的交互
(2) Management Serveices & Utilities: 系统管理与控制工具
(3) Connection Pool: 连接池。
管理缓冲用户连接,线程处理等需要缓存的需求
(4) SQL Interface: SQL接口。
接受用户的SQL命令,并且返回用户需要查询的结果。比如select from就是调用
SQL Interface
(5) Parser: 解析器。
SQL命令传递到解析器的时候会被解析器验证与解析。解析器是由Lex与YACC
实现的,是一个很长的脚本。
主要功能:
a . 将SQL语句分解成数据结构,并将这个结构传递到后续步骤,以后SQL语
b. 如果在分解构成中遇到错误,那么就说明这个sql语句是不合理的
SQL语句在查询之前会使用查询优化器对查询进行优化。他使用的是“选取-投
影-联接”策略进行查询。
用一个例子就可以理解: select uid,name from user where gender = 1;
这个select 查询先根据where 语句进行选取,而不是先将表全部查询出来以后再进
行gender过滤
这个select查询先根据uid与name进行属性投影,而不是将属性全部取出以后
再进行过滤,将这两个查询条件联接起来生成最终查询结果
(7) Cache与Buffer: 查询缓存。
如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据。
这个缓存机制是由一系列小缓存组成的。比如表缓存,记录缓存,key缓存,权限缓
存等
(8) Engine :存储引擎。
存储引擎是MySql中具体的与文件打交道的子系统。也是Mysql最具有特色的
一个地方。
Mysql的存储引擎是插件式的。它根据MySql AB公司提供的文件访问层的一个
抽象接口来定制一种文件访问机制(这种访问机制就叫存储引擎)
6
句的传递与处理就是基于这个结构的
(6) Optimizer: 查询优化器。
基于Web的新闻后台管理系统 绪论
现在有很多种存储引擎,各个存储引擎的优势各不一样,最常用的
MyISAM,InnoDB,BDB
默认下MySql是使用MyISAM引擎,它查询速度快,有较好的索引优化与数据
压缩技术。但是它不支持事务。InnoDB支持事务,并且提供行级的锁定,应用也相
当广泛。
Mysql也支持自己定制存储引擎,甚至一个库中不同的表使用不同的存储引擎,
这些都是允许的。
图1.4 Mysql结构图
1.3.6 Java开发环境的搭建
(1)下载安装jdk=++ binary library
(2)把JAVA_HOME/bin配置到系统环境变量Path中
(3)编写Java源文件
(4)编译.java得到.class
(5)调用JVM,运行“字节码文件中的类”
7
基于Web的新闻后台管理系统 绪论
额外:有的软件启动时提示说“需要JAVA_HOME环境变量”,配置方法:右键单击我的电
脑属性高级环境变量系统变量新建
然后,可以再修改下Path变量的值:
可以重启一个命令行窗口,查看修改后的结果:
图1.5 配置环境变量图
1.3.7 MyEclipse的使用介绍
A. MyEclipse常用快捷键
Alt+/ 快速补全 main sysout
Ctr+d
Tab
快速删除光标所在当前行
善用多用tab键
Ctrl+Alt+上/下 快速复制光标所在当前行
Ctrl+Z 撤销上步操作
Alt+上/下
Ctrl+/
快速移动当前行
快速注释/取消注释当前行
B. Eclipse中创建项目(project)
(1)workspace: 工作空间,eclipse将所有的项目都默认的保存的文件夹
8
基于Web的新闻后台管理系统 绪论
图 1.6 新建工作空间图
(2).metadata: 元数据,描述数据的数据,eclipse中每个workspace所指定的目录
下都自动创建一个这样的目录,以描述该空间下项目文件的特征(如显示字体、是
否显示行号….)
(3)perspective:视图,eclipse可以进行多种开发,每种开发环境的界面是不一样
的(如Java开发界面、调试界面、数据库操作界面、JavaWeb开发界面、Test开发、
android开发),每种这样的界面称为一个“视图”
图 1.7 设置界面属性图
(4)project: 项目,作为一个企业级开发环境,Eclipse要求所有的文件都必须从属
于某个“项目”(如cctv4 CMS系统、吉首大学一卡通系统、湖南地税OA系统、海
尔ERP系统)
9
基于Web的新闻后台管理系统 绪论
图1.8 项目创建步骤图1
图1.9 项目创建步骤图2
创建一个Java Project的过程:
图1.10 新建一个项目过程图
由上图可见,项目中的所有的.java源文件将自动保存入src目录,.class将自动
保存入bin目录下
10
基于Web的新闻后台管理系统 绪论
图1.11保存路径图
注意:Eclipse中只要新建或者保存一个源文件,立即自动编译得到.class
1.4可行性分析
开发任何一个基于web的系统必定受到时间限制与资源的制约。所以在进行web
项目开发之前,一定要根据可用的资源与开发周期等条件来进行可行性分析。可行
性分析工作的主要目的不是研究怎么解决具体问题,而是要在最短的时间内花费最
少的代价来确定该项目能否具有实际开发的可行性。
可行性分析主要包括经济可行性分析,技术的可行性分析,运行、操作可行性分
析,法律可行性分析以及进行开发的方案选择。
常规的可行性分析应该从以下这几步来进行:
(1)复查初步分析的结果。要求对系统进行初步的分析并得到结果以及对报告
书进行复查,改正描述不清晰的语句,然后重新来确定系统的目标以及规模,清晰
地描述关于系统的个个约束条件。
(2)研究已有的条件。找出其基本的功能以及基本信息,指出其不足或局限性
的缺陷。
(3)导出新系统的高层逻辑结构模型。用特定的工具导出系统高层的逻辑结构
11
基于Web的新闻后台管理系统 绪论
模型,并与现有的系统比较。
(4)导出新系统的高层物理结构解法,提出更多可以选择的解决方案,并且对
所有方案的经济的可行性、技术的可行性、运行与操作的可行性等进行详细的分析
比较。
(5)推荐建议的方案。假如系统分析员认为值得开发,那么必须指出开发的价
值意义、提出推荐方案理由,并且为推荐的系统拟定一份开发计划,并且提交可行
性分析报告等所有文档。倘若分析员认为没有开发的意义,那么也要拿出充分理由
说明。
(6)评审、复审与决策。可行性分析研究最后必须通过技术的评审以及管理的
复审,开发的那方与客户那方或者使用部门的负责人需要根据成本-效益分析等各项
可行性分析研究的结论,做出是否继续这项工程的决策。
本系统属于新闻信息发布与管理系统类。用户对功能上的要求不是很复杂,而且
有强大工具与框架环境支持。新闻发布系统后台管理对新闻做了详细的分类,前台
以分版块形式显示新闻的详细信息,满足了人们浏览新闻时分类查看新闻信息的要
求,前台提供搜索新闻信息功能,方便浏览者查找相关的新闻信息新闻。新闻发布
系统后台由管理员进行管理维护,保证了网站的安全性与权威性,所以本系统是十
分可行的。
12
基于web的新闻后台管理系统 需求分析
第二章 需求分析
2.1需求说明
目前,网页制作如火如荼,网站建设热火朝天,及社会的竞争是越来越激烈,
各厂家及生产公司都在不断的提高生产的产品质量,特别是企业网站的发展正在关
键的时刻,各商家都在最后的冲刺、网页月月改版,信息日日更新,这时他们就得
借助媒体来提高他们的产品的知名度,而新闻发布系统就是一种很好、很现代的工
具。JSP是一种简单的、安全的,性能非常之高的、动态的脚本语言。JSP可以用来
开发Web应用程序,JSP具有较高的执行效率,强大的数据库支持与网络支持,具
有多平台特性与极大的开放性与扩充性,拥有广泛的应用前景。
通过相关调研,要求该系统应具有以下功能:
(1)通过网络浏览各类新闻及发表评论。
(2)新闻能分类显示相关信息。
(3)提供站内新闻的搜索功能。
(4)为后台管理提供管理入口。
(5)后台管理员能编辑各类新闻并且管理新闻与评论。
2.2开发环境
为了保证新闻发布系统运行的效率与可靠性,服务器应具有较高的软硬件配置,
客户端的要求不是很高。此应用程序可广泛运行于互联网即Internet,也可适用于内
部的局域网。其运行要求如下:
软件环境:
客户端:Windows2000/XP,Internet Explorer(IE) ,Dreamweaver 8等。
服务器端:Windows2000/ WindowsXP,Internet Information Server (IIS)4.0及其
以上版本,IE6.0以上版本等;或者Windows98,Personal Web Server(PWS),IE等。
数据库:采用Mysql,运行于服务器端。
服务器:Tomcat7.0.32
硬件环境:
主机:CPU Pentium 4以上,内存256M以上。
2.3管理员功能模块
(1)管理员可以进行板块管理,对新闻版块进行添加、修改与删除操作。
(2)管理员可以对自己的登录密码进行修改操作。
(3)管理员可以对新闻评论管理,对评论进行添加、修改与删除操作。
(4)管理员可以对各个新闻版块的新闻信息管理,对新闻信息进行添加、修改与删
除操作。
13
基于web的新闻后台管理系统 需求分析
2.4数据流图
当数据处在软件系统中进行移动时,它就会被一系列的“变换”修改。数据流
图(DFD)就是一种基于图形化的技术,它描绘的信息流和数据从输入移动到输出
的整个过程中所经受到的变换。在数据流图中并没有任何具体物理部件,它仅仅是
描绘各种数据在软件系统中的流动以及被处理的整个逻辑过程。数据流图就是整个
系统逻辑的功能图形表示形式。数据流图的符号说明如图2-1所示:
外部项 加工 数据存储 数据流
图2.1数据流图图例
根据调查材料,明确系统外部项,识别数据输入的来源与输出的去处,自顶向
下逐层扩展整个系统的逻辑功能。如图2-2示。D1:管理员信息存储,D2:新闻板
块信息
D2
管理
新闻信息
存储
管理员
D1
新闻版块 新闻内容
用户
新闻内容
图 2.2数据流图
2.5数据字典
建立数据字典是为了对数据流程图上各个元素做出详细的定义与说明。数据字
典以一种准确的与无二义的方式定义所有被加工引用的数据流与数据存储。数据流
程图配以数据字典,就可以从图形与文字两个方面对系统的逻辑模型进行描述,从
14
基于web的新闻后台管理系统 需求分析
而形成一个完整的说明。数据字典有助于数据的进一步管理与控制,为设计人员与
数据库管理人员在数据库设计、实现与运行阶段控制有关数据提供依据。
数据字典描述的主要内容有:数据流、加工外部项、数据存储、数据元素。
(1)数据流:用单箭头表示,如――>。是由一组固定成分的数据组成,用来表示数
据流向。数据流图描述的就是数据流,而非控制流。除了流向数据存储或从数据存
储流出的数据不需要命名以外,每个数据流都必须要拥有一个合适的名称,以反映
出这个数据流的含义。
(2)加工:用圆或椭圆表示,如〇。描述从输入数据流到输出数据的转换,也就是
输入数据流需要经过什么处理过程后才能变成输出数据。每个加工都会有一个对应
的名称和编号。编号能反映该加工出于分层的数据流图的具体层次和哪张图中的位
置,能够看出它是由哪一个加工分解出来的子加工。
(3)数据存储:用双杠(带一边开口,一边闭合)表示。数据存储用来表示暂时存储的
数据。每个数据存储都仅有一个名称与之对应。
表2.1数据字典管理员信息
名字:管理员信息存储 。
编号:D1。
描述:存储后台管理员信息。
定义:ID号+管理员账户+管理员密码。
位置:管理员表。
表2.2数据字典新闻信息
名字:新闻信息存储。
编号:1。
描述:存储新闻信息。
定义:新闻编号+新闻类别编号+新闻标题+新闻内容+发布时间。
位置:新闻信息表。
表2.3数据字典新闻版块信息
名字:新闻版块信息。
编号:D2。
描述:存储版块信息。
定义:版块编号+版块名称。
位置:新闻版块信息表。
15
基于web的新闻后台管理系统 需求分析
2.6用例图
浏览新闻
首页
评论
用户
图2.3用户用例图
新闻管理
登录
评论管理
管理员
图2.4管理员用例图
2.7系统总体框架图
数据层
设计数据服务
配置系统信息
表示层
应用层
用户接口层
16
基于web的新闻后台管理系统 需求分析
图2.5系统总体框架图
2.8实体关系图
新闻发布系统的数据库设计中,首先要对系统分析得到的数据字典中的数据存
储进行分析,分析各数据存储之间的关系,可采用E-R图进行数据结构分析。
E-R图是概念模型最常用的表示方法,在E-R图中:
(1)用长方形表示实体型,在框内写上实体名。
(2)用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与
有关实体相连,在无向边旁标上联系的类型。若实体间的联系也具有属性,则把属
性与菱形也用无向边连上。
新闻发布系统的E-R图所示:
管理员(管理员账号,密码);
新闻信息(新闻编号,类别编号,新闻标题,新闻内容,新闻图片相对路径,
发布时间,点击率);
新闻版块(版块编号,版块名称);
评论信息(评论编号、评论对应的新闻编号、评论者姓名、评论内容、评论时
间)。
17
基于web的新闻后台管理系统 需求分析
图2.6新闻发布系统E-R图
管理员
管理员标识管理员名管理员密码
图2.7 管理员E-R图
新闻标识新闻长标题新闻短标题
新闻信息
新闻来源新闻发布时间
18
基于web的新闻后台管理系统 需求分析
图2.8 新闻内容E-R图
新闻类别
新闻类别标识新闻类别名称
图2.9 新闻类别E-R图
19
基于web的新闻后台管理系统 系统分析与总体设计
第三章 系统功能概述
新闻网站添加新闻倘若使用的是静态网页作为新闻的页面,那么维护工作就会
非常繁琐复杂,管理员每天都需要制作大量的网页,从而浪费很多时间与精力。使
用新闻发布系统可以使新闻发布与管理变得更为轻松,管理员只需要设置标题、内
容与图片等就可以了,系统将会自动生成相对应的网页。下面将对新闻发布系统进
行系统功能分析。
3.1系统功能分析
新闻发布系统主要功能如下。
(1)用户管理功能,用户可以浏览新闻信息、发表评论。
(2)新闻版块信息显示与管理功能。
(3)管理员管理功能,管理员负责整个新闻发布系统的后台管理。
(4)新闻内容显示与管理功能。
(5)管理员可以修改自己的登录密码。
3.2系统的概要设计
本系统是基于JSP+SQL的WEB应用系统,采用B/S模式。B/S模式的优势是
系统开发、维护与升级方便,管理成本较低。用户界面一致,使用简单,可以从不
同的地点,以不同的方式访问与操作;一般客户机都不需要去额外安装新软件,只
需要安装浏览器就可进行操作。便于管理维护,应用程序运行在服务端,这样方便
管理员对系统的管理、更新与升级,降低服务端与客户端之间的依赖性,同时通过
了应用程序代码的安全性,有效地保护系统平台与服务端的数据库的安全。
3.3系统模块划分
新闻发布系统主要分三大功能模块:前台系统功能模块,该后台系统功能模块,
公共模块,其中前台与后台模块为重点,下图为前台模块图。
新
闻
发
布
系
统
前
台
用户浏览模块
浏览新闻标题
浏览新闻发表时间
查看新闻信息
新闻搜索模块
图3.1前台模块图
20
搜索新闻
基于web的新闻后台管理系统 系统分析与总体设计
管理员登录
检查管理员登录
图3.2 后台模块图
退出系统
保存评论信息
浏览新闻,编辑新闻
浏览新闻内容
删除新闻内容
浏览版块新闻标题
修改新闻内容
修改管理员密码
新闻版块分类
新闻版块信息管理
新闻信息管理
修改新闻
失败
添加新闻
删除新闻
21
基于web的新闻后台管理系统 系统分析与总体设计
第四章 系统分析与总体设计
4.1总体结构
系统功能模块的划分,是在需求分析基础上进行的,是把具有复杂功能的系统
通过设计分解为具有基本独立,功能简单,容易实现等特点的多个功能模块。模块
划分的好处是,由于组成系统模块基本是相对独立的,功能很明确,因此便于开发
人员对模块进行独立开发、维护与修改,而不会影响整个系统中的其他模块。
模块的划分应该遵循低耦合,高聚合的划分原则。耦合的高低可以表示模块之
间联系程度的强弱。聚合表示一个模块内部组成之间的联系程度。低耦合就表示模
块之间的联系越弱,反之,则联系程度强。耦合度越低,说明模块之间相互联系越
弱,依耐性小,则相互间产生影响与连锁反应的概率就会越小。也就是说当某个模
块出现故障或者需要修改与维护时,对系统其他模块产生的影响就小。该原则有助
于提供系统的可维护性与可扩展性。
管理员登录页面
检查管理员登录页面
失败
添加新闻
新闻版块信息管理
新闻信息管理
修改新闻
删除新闻
修改管理员密码
新闻版块分类
浏览版块新闻标题
修改新闻内容
浏览新闻,编辑新闻
浏览新闻内容
删除新闻内容
保存评论信息
退出系统
图4.1后台系统功能模块流程图
22
基于web的新闻后台管理系统 系统分析与总体设计
4.2各页面功能分配
新闻发布系统页面功能如下。
(1) :添加新管理员
(2) :添加新闻类别
(3) :添加文字新闻
(4) :管理员基本信息的录入
(5) :管理员列表(删除管理员页面)
(6) 管理系统布局
(7) :文字新闻关系查看(可对新闻进行删除、修改的页面)
(8) login_:登录成功的页面
(9) :管理员登录页面
(10) logout_:退出系统页面
(11) :管理系统主页面
(12) :新闻类型查看页面(可实现添加删除新闻类型)
(13) :文字信息录入页面(可实现文字新闻的录入)
(14) :用户注册页面(实现用户添加)
(15) register_:用户注册成功页面(显示用户注册成功)
(16) :验证码功能页面(实现使用验证码验证登录功能)
4.3数据库设计
系统采用Mysql数据库作为后台数据库。通过分析要在数据库中存储以下基
本信息。
(1) 管理员信息:管理员id、管理员名、管理员密码、管理员头像地址
(2) 用户信息:用户id、用户Email地址、用户密码、用户名、添加用户时间
(3) 新闻类别信息:新闻类别id、新闻类别名称
(4) 文本新闻信息:新闻id、新闻长标题、新闻短标题、新闻内容、新闻来源、
新闻发布时间
(5) 文本新闻评论信息:新闻评论id、评论人id号(外键)、评论内容、新闻id
(外键)、新闻评论发布时间
4.4创建数据表
23
基于web的新闻后台管理系统 系统分析与总体设计
表4.1 管理员表
编号
表描述
字段
ID
NAME
PASSWORD
HEAD_PIC
1 表名
类型
TN_ADMIN
记录系统管理员
备注
管理员标识
管理员名
管理员密码
管理员头像地址
int primary key auto_increment
varchar(20) not null unique
varchar(20) not null
varchar(50) null
图 4.1 管理员表结构图
表4.2 用户表
编号
表描述
字段
ID
PASSWORD
HEAD_PIC
NAME
2
表名
TN_USER
记录系统的用户
类型
int auto_increment primary key
varchar(50) null
varchar(20) null
varchar(50) null
varchar(20) not null unique
24
备注
用户标识
用户Email地址
用户密码
用户头像地址
用户名
基于web的新闻后台管理系统 系统分析与总体设计
REG_Time
datetime null 添加用户时间
图 4.2 用户表结构图
表4.3 新闻类别表
编号
表描述
字段
ID
NAME
3 表名 TN_NEWSCATEGORY
记录系统的新闻
类型 备注
新闻类别标识
新闻类别名称
int auto_increment primary key
varchar(12)null unique
图4.3 新闻类别结构表图
表4.4 文本新闻表
编号
表描述
字段
ID
LONGTITLE
SHORTTITLE
CONTENT
SOURCE
3 表名 TN_TEXTNEWS
记录系统的新闻
类型 备注
新闻标识
新闻长标题
新闻短标题
新闻内容
新闻来源
int auto_increment primary key
varchar(50) null
varchar(20) null unique
varchar(3000) null
varchar(12) null
25
基于web的新闻后台管理系统 系统分析与总体设计
PUB_TIME datetime null 新闻发布时间
图 4.4 文本新闻结构表图
表4.5 文本新闻评论表
编号
表描述
字段
ID
USER_ID
CONTENT
NEW_ID
PUB_TIME
SUPPORTCOUNT
4
表名 TN_TEXTNEWSCOMMENT
记录系统的新闻评论
类型
int auto_increment primary
key
int not null
varchar(200) not null
int not null
datetime null
int
备注
新闻评论标识
评论人ID号(外键)
评论内容
新闻标识(外键)
新闻评论发布时间
新闻评论被顶的数量
26
基于web的新闻后台管理系统 系统分析与总体设计
图 4.5 文本新闻评论图
27
基于web的新闻后台管理系统 详细设计与实现
第五章 详细设计与实现
5.1目录结构与公用模块介绍
在运行实例时,将news目录复制到站点指定目录下,该系统的目录结构如图5-1所
示:
图5.1新闻发布系统目录结构图
28
基于web的新闻后台管理系统 详细设计与实现
5.1.1连接数据库
系统中几乎所有的页面都要进行数据库的连接,这里使用Hibernate连接
数据库,更为简单快捷,具体实现代码如下:
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"/hibernate-configuration-3.
">
name="dialect">ialect
name="">jdbc:mysql://localhost:3306/tn?useUnic ode=true&characterEncoding=utf8
name="_class"> ty> name="e"> roperty> resource="com/etraca/domain/"/> resource="com/etraca/domain/"/> resource="com/etraca/domain/"/> resource="com/etraca/domain/"/> 29 基于web的新闻后台管理系统 详细设计与实现 5.1.2层叠样式文件 为了使新闻发布系统的界面美观、风格统一、修改方便,所以创建一个层叠样 式表文件,对所有的网页文件所标记的属性实行统一控制。文件如下: 图5.1.2 CSS样式文件结构图 5.2管理系统登录界面 实现主要代码如下: 图 5.2 管理系统登录界面效果图 class="login-text02">用户名称: value="${name}" size="30" /> 30 基于web的新闻后台管理系统 详细设计与实现 cssClass="fielderr"> cssClass="fielderr"> /> href="vcode" class="login-text03">看不清楚, 换张图片 码: cssClass="fielderr"> 31 基于web的新闻后台管理系统 详细设计与实现 class="right-button01" value="确认登陆" /> type="submit" class="right-button02" value=" 重 置" />
密 码:
验证图片: 请输入验证
