韩霄 郭义喜 王志刚
解放军信息工程大学电子技术学院 河南 450004
新闻发布系统(News Release System)是上个世纪九十年代互连网技术发展以后才出现的技术,现在大多数网站使用的新闻发布系统平台功能有限,或多或少存在以下几个缺点:
(1) 新闻发布系统开发的周期长。
(2) 新闻发布系统开发的工作量大。
(3) 新闻发布系统开发通用性差,一次开发只对应于一个网站,很难实现网站信息开发的自动化和资源的重复利用。
(4) 新闻发布系统开发的费用比较高,人力资源浪费严重。
(5) 网站的管理和后期系统的维护升级困难。
针对目前新闻发布系统的现状,本文提出了一种基于J2EE的新闻发布系统,在本系统中使用Struts框架进行开发既能减低开发复杂度,又能使整个系统清晰,可靠,健壮,本系统开发周期短,兼容性强,易维护。
目前,J2EE在互联网上非常流行,J2EE在各种领域都得到了深入的研究和应用。本系统基于 J2EE 平台,采用Struts框架,利用模型-视图-控制器(MVC)设计模式,而后台数据库则是用MySql。下面针对本系统所采用的相关技术进行详细介绍。
J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性。
MVC设计模式来源于面向对象语言 Smalltalk,它的主要思想是将应用程序分为三个部分:模型(Model)、视图(View)和控制器(Controller),以提高应用程序的可扩展性。
Struts是MVC设计模式/Model2架构的一个实现,它将应用分为模型、视图和控制器三部分。
为了将MVC设计模式有效地应用于J2EE应用开发之中,在Apache软件基金赞助下,一个叫做Jakarta的项目计划得以开展,项目的创立者希望通过对该项目的研究,为开发人员提供一个开发MVC模式的应用框架,Struts正是这个项目的产物。
MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。
基于J2EE的新闻发布系统是基于J2EE平台的集新闻发布、管理于一体的新闻发布系统,是将新闻、信息栏目、产品发布和业界动态等信息集中起来发布、管理、查询等的一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。
基于J2EE的新闻发布系统体系结构图如图1所示。
图1 基于J2EE的新闻发布系统体系结构图
基于 J2EE的新闻发布系统包含前台新闻浏览模块和后台新闻管理模块。
前台新闻浏览模块又包含用户注册、用户登录、新闻主页、新闻浏览、新闻查询、新闻评论、新闻类型列表、相关新闻链接、新闻访问统计次数9个子模块。
后台新闻管理模块又包含新闻类型管理、新闻信息管理、新闻评论管理、用户管理4个子模块。
本系统功能如下:
前台新闻浏览
(1) 用户注册、登录;
(2) 显示前10条推荐新闻;
(3) 图片显示前5条图片新闻;
(4) 显示每项分类新闻的前10条新闻;
(5) 新闻查询;
(6) 新闻评论;
(7) 相关新闻连接;
(8) 新闻访问统计。
后台新闻管理
(1) 管理员登录;
(2) 添加、删除、修改发布新闻;
(3) 添加删除修改新闻类型;
(4) 搜索新闻;
(5) 删除评论;
(6) 文件上传;
(7) 添加删除修改用户及权限。
在本系统中使用的是MYSQL 数据库管理系统。数据库服务器安装的位置为本机,数据库名称为NEWS,下面将针对本系统数据库分析和设计、数据表的创建,数据表关系图和创建存储过程做详细的阐述。
为了把用户的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型。概念性数据模型是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户角度看到的数据,它反映了用户的现实环境,而且与软件系统中的实现方法无关。这一概念模型就是实体-关系图。实体-关系图包含三种相互关联的信息:数据对象、数据对象的属性以及数据对象彼此间相互连接的关系。
根据上述对基于J2EE的新闻发布系统功能的设计分析,创建各数据表的实体E-R总关系图,如图2所示。
图2 E-R实体关系图
在基于 J2EE的新闻发布系统中各数据表的关系图如图3所示,各数据表之间的关系比较紧密,所以在对数据操作时要注意数据的完整性。
图3 数据表关系图
本文针对现今各事业单位对于新闻发布的强烈需求,提出了一种基于J2EE的新闻发布系统。本系统基于J2EE平台,前台使用 JSP来开发,选用 Java语言作为开发语言,基于Struts框架,利用模型-视图-控制器(MVC)设计模式,开发工具采用 Eclipse3.2,而后台数据库则是用 MySql,Tomcat作为测试服务器。本系统提高了用户获取新闻信息的及时性,使用户能更加方便快速的浏览新闻,使新闻信息可以更加集中有效的发布管理。
[1] 茹蓓,张磊.新闻信息发布管理系统的现状及改进[J].平原大学学报.2004.
[2] 方贤文.基于 Struts的 Web系统构建[J].计算机技术与发展.2006.
[3] BobareJJ,AllenpaulR.刘塑译.J2EE 技术内幕[M].北京:机械工业出版社.2005.
[4] 赵娜.用Struts实现MVC结构[J].绍兴文理学院学报.2004.
[5] 方贤文.基于 Struts的 Web系统构建[J].计算机技术与发展.2006.
[6] 孙卫琴.精通Struts:基于MVC的Java Web设计与开发[M].第一版.北京:电子工业出版社.
[7] 唐汉明.深入浅出 MySQL数据库开发、优化与管理维护.人民邮电出版社.2008.
[8] 张海藩.软件工程(第四版)[M]. 北京:清华大学出版社.2003.
[9] 叶俊民.软件工程[M].北京:清华大学出版社.2006.