杜 宇
(永济市企业养老保险中心,山西 运城 044500)
现在人们大多数是通过网络来获取信息,这就大大地提高了对信息发布系统的需求,信息发布系统要求发布的信息要全面,更新速度要快,并且要方便用户的浏览。本系统利用MyEclipse8.6 集成开发工具,在JDK 1.6+MYSQL 5.5+TOMCAT 7.0的环境下开发一个基于JAVA EE[1]的信息发布系统,本系统用于发布新闻、娱乐、时事资讯等媒体信息,并且可以很好地实现用户登录、留言、评论、投票、下载等功能。本系统采用B/S[2]结构的方式来实现上述功能,利用FreeMarker 技术和RIA[3]技术来实现前台页面显示并提供互动的用户界面,同时应用jQuery[4]实现后台动画效果,并利用SOA[5,6]技术将系统不同单元联系起来。
JAVA EE(JAVA Platform,Enterprise Edition)是Sun 公司在J2EE的基础上,推出的企业级应用程序版本。它可以帮助开发和部署可移植、健壮、安全的服务器端Java应用程序。JAVA EE 构建在JAVA SE的基础上,它提供组件模型、Web 服务、管理和通信API,JAVA EE 可以实现企业级的面向服务体系结构SOA和Web 2.0应用程序。JAVA EE所包含的技术包括JDBC、EJB[7]、Annotation 等。
Jquery是一个典型的Javascript 框架。Jquery 可以让用户更方便地处理html documents、events,从而来达到动画效果。Jquery是一个轻量级js 库,并且兼容CSS3,而且还兼容各种浏览器。Jquery的另外一个优势是,文档说明全面,应用描述详细,而且有很多成熟的插件可以选择。Jquery 可以使用户的html 页保持代码和内容分离,即不用再在html 中插入很多的js 来调用命令,用户只定义id 即可。
SOA(Service-Oriented Architecture)即面向服务的体系结构。SOA是组件模型,它能够将应用程序的不同功能单元,通过定义良好的接口和规约联系起来。定义的接口应该是独立于实现服务的硬件平台、操作系统和编程语言,从而使构建在系统中的各种服务可以用一种通用、统一的方式进行交互。
RIA 技术是基于XML的,在界面上采用的是Flash 等技术,用ActionScript 脚本来做动态响应。RIA 在编写时同一般网页基本一致,但是它的最终界面却炫丽很多。RIA 技术的另一个好处是数据可以被缓存在客户端,这样能够实现一个响应速度更快,数据来回于服务器的次数更少的用户界面。RIA 技术摆脱了浏览器的限制,具有美观丰富的界面和快速修改、交互的能力。
FreeMarker是一款模板引擎,一种基于模板的、用来生成输出文本的工具。它是为Java 程序员提供的一个开发包,它不是面向最终用户,而是为程序员提供的可以嵌入开发产品的一款应用程序。FreeMarker的设计实际上是用来生成HTML 网页,尤其是通过基于实现了MVC(Model View Controller)模式的应用程序。使用MVC 模式的动态网页的构思使得前端设计者(编写HTML)从程序员中分离出来。网页设计师可以改写页面的显示效果而不受程序员编译代码的影响,因为应用程序的逻辑和页面设计分开了。这种分离的思想对页面设计师和程序员是同一个人的项目来说,是很有用的,因为分离使得代码简洁、易于维护。
B/S结构(Browser/Server),是一种网络结构模式,浏览器是客户端主要的应用软件之一。网络结构模式把客户端统一化,把实现系统功能的主要部分集中在服务器上,使得系统的开发、维护和使用更简化。客户机上只需安装一个浏览器,浏览器通过Web Server和数据库来进行数据交互。B/S结构图如图1所示。
图1 B/S结构图
本文主要是实现信息发布系统的开发,系统包括前台、后台两个主要模块。前台主要是针对普通用户设计,用户可以很方便地查看和搜索所要了解的最新新闻、娱乐、资讯等内容,用户注册以后还可以对内容进行评论、留言、投票,同时可以下载系统提供的资源。后台主要是针对系统管理员设计,系统管理员可以通过后台管理系统方便地管理、维护系统,包括管理前台栏目、显示内容、模板、资源文件、用户、评论、留言等。
前台模块的流程图如图2所示。
图2 前台模块的流程图
后台模块的流程图如图3所示。
图3 后台模块的流程图
用户登录系统后,根据自己的角色进入相应的模块。普通用户进入前台页面,实现对已发布信息的浏览、查询,通过注册,还可以进行发表评论、留言、投票等。系统管理员进入后台模块,可以对信息进行添加、修改、删除等操作,还可以对系统进行维护和管理。系统的主要功能模块如下:
(1)投票模块 包括一些热门话题,用户可以对自己所关心的话题进行投票。
(2)评论模块 在每个栏目的内容后面,都设定了评论,会员用户可以对所关心的内容进行评论,同时可以查看其他会员评论的内容。
(3)留言模块 会员用户可以给系统的管理员留言,将自己的意见、建议反映给管理员。
(4)内容模块 主要是对每个栏目中的内容进行管理,可以查看、添加、修改、删除栏目中的内容,还可以对栏目内容进行审核,栏目内容又包括图文、普通、焦点、头条四种类型,不同的类型对应着不同的显示位置和显示方式。
(5)模板模块 主要是编写前台模板页,也可以对前台模板页进行修改、删除、重命名等操作。
(6)资源模块 主要是用来对系统资源进行管理,包括系统涉及到的图片、CSS样式等,管理员可以上传系统所需要的图片,可以对系统CSS样式进行编写。
(7)栏目模块 系统管理员对前台的信息发布系统栏目进行管理,可以根据需求添加、修改、删除栏目等,在次栏目中还包括模型管理,包括单页、新闻、作品、下载四个模型。
(8)用户模块 主要是对系统管理员及系统会员来进行管理的,可以为会员分组,设置各组会员的访问权限等。
JAVA EE是一套不同于传统应用开发的技术架构,它包括了很多组件,主要是可以简化并且规范应用系统的开发与部署,从而提高安全性、可移植性和再用价值。Spring[8]框架提供了构建Web应用程序的MVC 模块。Spring 框架是可以高度配置的,包含了多种视图技术,Spring MVC 框架不知道它所使用的视图,所以不会强迫人们只使用JSP 技术。Spring MVC 分离了模型对象、控制器、分派器以及处理程序对象的角色,这种分离使得它们很容易的进行定制。MySQL是一个小型的关系型数据库管理系统。MySQL 具有成本低、速度快、体积小的特点。前台页面如图4所示。
图4 前台页面
进入前台页面后,用户可以对已发布的所有信息进行浏览、查询、阅读,通过用户注册,可以对发布的信息进行评论、投票、下载。
(1)动态更新该系统可以将新闻的操作立即在对应的栏目中显示出来,达到“实时发布,动态更新”的效果。
(2)功能完善用户登录前台主页面,可以对已发布的所有信息进行浏览、查询等。系统管理员登录后台管理页面,可以实现信息的录入、修改、删除等功能。
(3)界面友好 界面简洁、直观,使用户达到赏心悦目的效果。界面布局得当,用户可以很快捷地找到所需信息。
(4)运行效率、安全性高 本文设计的信息发布系统具有更好的健壮性、安全性及良好的运行效率。系统还可以容易地进行升级、移植,并且易于管理和维护。
在Internet 飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们生活的各个方面发挥着重要的作用。这次我们所开发的系统正是互联网与社会生活之间紧密关系的体现。现今的社会,人们已经离不开了网络,网络已经成为人与人之间交流的一种形式,它能够把事情的复杂化转为简单化。信息发布系统的开发,使得人们可以更方便、快速地了解最新的信息。
[1]Prajapati,Dabhi.High Quality Web-Application Development on Java EE Platform[A].Proceedings of IEEE International Advance Computing Conference[C].Patial.2009.INDIA,2009:1663-1668.
[2]任泰明.基于B/S结构的软件开发技术[M].西安:电子科技大学出版社,2006:1-98.
[3]Linaje M,Preciado J,Sanchez F F.Engineering Rich Internet Application User Interfaces over Web Models[J].Internet Computing,2007,11(6):53-59.
[4]季国飞.jQuery 开发技术详解[M].北京:电子工业出版社,2010:16-34.
[5]Trkman Peter,Kovacic Andrej ,Popovic Ales.SOA Adoption Phasesa Case Study[J].Business & Information Systems Engineering,2011,3(4):211-220.
[6]丁兆青,董传良.基于SOA的分布式应用集成研究[J].计算机工程,2007,33(10):248-248.
[7]张国平,万仲保,刘高原.基于轻量级J2EE 框架信息发布系统的设计与实现[J].华东交通大学学报,2007,24(1):71-75.
[8]计文柯.Spring 技术内幕-深入解析Spring 架构与设计原理[M].北京:机械工业出版社,2010:1-78.