APP下载

基于J2EE的B/S架构高校图书管理信息系统的构建

2009-11-19石文华

现代情报 2009年9期
关键词:体系结构客户端架构

石文华

〔摘 要〕分析了高校图书信息管理系统在图书管理中的重要性,并简要介绍了基于J2EE的B/S 结构的特点及优势,重点论述了在此基础上实现的图书管理信息系统的体系结构与功能,最后用实例说明了基于J2EE的图书管理信息系统的实现过程。

〔关键词〕J2EE;B/S;图书管理信息系统

〔中图分类号〕G251 〔文献标识码〕B 〔文章编号〕1008-0821(2009)09-0137-03

The Building of Book Management Information

System in B/S Structure Based on J2EEShi Wenhua

(Information Center,Shandong Electric Power College,Jinan 250002,China)

〔Abstract〕The article analyzed the importance of the book management information system,gave the brief introduction of the feature and virtue of J2EE,emphasized on the introduction of the structure and function of the book MIS in B/S based on J2EE,at the end,gave an example to explain the realization of the book MIS.

〔Key words〕J2EE structure;B/S;Book MIS

目前使用计算机处理图书信息已经非常普及,但多数系统是基于C/S(Client/Server)模式的。随着Internet/Intranet的快速发展及广泛应用,传统的基于客户机/服务器的计算方式已不适应新的需求。主要表现为程序之间的关联性很强[1],如果改动某一处则可能会影响到其他模块的改动,因此程序难以维护。其次,单一的服务器在系统稳定性和安全性方面存在隐患,而且在信息访问高峰期系统效率较低,而安全性和稳定性对于类似于图书管理系统来说确是必须保证的。这些缺陷的存在主要是由于C/S模式客户端的数量受到服务器处理能力的限制,系统的可扩充性不好、系统维护代价高,当商务逻辑层变化时,需要同时更新客户端和服务器端的内容等多个方面原因所造成的影响,而J2EE架构的出现解决了这一问题。J2EE架构是为适合Internet上的Web计算特点而产生和发展的,与传统的客户机/服务器计算模型相比,J2EE架构采用组件的思想,将商务逻辑从客户端、服务器端中独立出来,更适应于日益复杂化和日益变化的商务逻辑的需要,从而使开发、维护和使用时更加方便。分布式和可移植性更强。系统的客户端可以是基于浏览器的,也可以是基于用各种编程语言开发的各种应用程序。J2EE平台上的多层应用使高重用性、高安全性、高可靠性和可移植性得到实现。因此基于J2EE平台开发基于B/S模式的MIS(管理信息系统)系统是一个发展趋势。

具体到图书管理信息系统软件体系结构的设计,主要考虑了以下几方面的因素:(1)图书管理信息系统的用户主要是教师和学生,为了使他们可以在不同的地点、不同的时间、不同的系统环境下访问该系统,系统的跨平台运行特性是必须要考虑的因素。(2)系统提供的大部分操作都涉及到与用户动态地进行信息交互,因此要求系统能够实现数据的动态发布功能。(3)图书管理信息系统的运行需要后台数据库提供数据管理和控制服务。综合以上考虑和J2EE构架的特点,该系统采用J2EE结构作为系统体系结构的技术开发平台。

1 J2EE体系结构及其优势

J2EE(Java2 Platform Enterprise Edition)是由SUN公司引导,各厂商共同发起的,并得到广泛认可的工业标准,是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。

J2EE体系结构定义了3个层次,分别为客户层、中间层和资源层[1-4]。客户层又称为客户表示层,在系统中具体表现为浏览器等,是整个应用系统的用户接口部分,担负着用户与应用间的对话功能,主要用于检查用户从键盘等输入设备输入的资料,可通过HTML等显示用户请求的信息。客户层可以使用不同的客户端程序,具有很好的分布性,适应分布管理的要求。中间层,又称为中间逻辑层,包括WEB层(Presentation Logic表示逻辑)和EJB层(Business Logic商务逻辑),该层可以由多个子层组成,WEB层通过WEB容器与客户层进行交流,主要的商务逻辑的处理则放到EJB层;WEB层的JSP组件作为EJB层的Enterprise Java Beans组件的客户端。EJB对数据库的访问通过JDBC来实现。资源层,又称为数据逻辑层,在系统中就是数据库管理系统,可由多个数据库系统组成,主要负责管理对数据库资料的读写。

J2EE是一个标准的体系结构,特别面向使用Java程序设计语言进行基于Web的企业应用的开发和部署。其核心为Java平台或Java2平台的标准板。同其他开发平台相比所有的企业逻辑和服务都封装在可重用和可移植的EJB组件中,版本更新变得简单,只需要在服务器端进行,而客户端无需任何修改,具有系统可维护性和可重用性好的特点,又由于其能够通过WEB服务可以使用标准的方法将功能和数据暴露出来,供其他程序使用,有利于应用系统的集成。此外,J2EE架构把一些通用的、很繁琐的服务端任务交给中间件去完成,无需考虑数据,使开发人员可以把精力集中在如何创建业务逻辑上,节省了开发时间。

2 图书管理信息系统结构

2.1 图书管理信息系统功能模块分析

根据高校图书信息管理的工作实际,对常规的图书信息管理的内容进行分类总结,确定了图书管理信息系统组成的四大模块,即:图书信息模块、图书借阅统计管理模块、教职工/学生信息管理模块和系统管理模块。其主要系统功能分析如表1所示。

3.2 基于J2EE平台的图书管理信息系统架构分析

图书信息管理系统符合J2EE架构,分为客户层、表示逻辑层、商务逻辑层和数据库层。其结构流程如图1所示。

3.3 系统开发过程

下面以图书管理信息系统中学生信息查询的实例说明开发的基本过程[3]。

客户层:客户端可以为任何浏览器页面或java应用程序,该系统中假定为浏览器页面student.html,该页面中包含各种查询条件控件,如学生姓名文本框、学生性别单选框、学生班级列表框等,当用户输入查询条件,并单击“查询”按钮时,则触发JavaScript事件Query,该事件将根据输入的数据构造一个XML数据,例如,一个按学生姓名“李明”查找该学生入学基本信息的XML数据:<信息查询>

<查询类型>姓名查询类型

<信息类型>入学信息信息类型

<查询关键字>李明查询关键字

信息查询

上述XML数据由JavaScript事件发送到Web服务器。

中间层:Web服务器中的主控制器Main Controller是一个Servlet。客户端的所有请求都要发送到作为主控制器的servlet,由它负责解析并将客户端的请求转发到负责相应模块的Servlet或JSP。例如,当主控制器接受到上述的XML数据后,由相应模块解析,根据XML的根元素是“信息查询”将请求转发到信息查询模块,如StudentQuery,StudentQuery也是一个Servlet,它分析主控制器传入的XML数据后,决定应该使用商务逻辑层中EJB的哪个方法来查询数据。EJB层用于处理信息查询这个业务的会话Bean,假定为QuerySessionBean,这里由于查询到数据后就返回给客户端,不需要保持会话状态,所以是一个无状态的会话Bean。其中分别提供了按姓名QueryByName(Stringname)、班级QueryByClass(Stringclass)、专业QueryBySpeciality(Stringspeciality)等查询的方法,通过执行程序,利用JDBC提供的标准API对数据库进行访问和相应的操作处理。

该例中,StudentQuery根据XML的数据,通过QuerySessionBean的本地接口获得一个QuerySessionBean的远程接口对象,并用这个远程接口对象调用QuerySessionBean的QueryByName(“李明”)方法,获得姓名为“李明”的符合查询条件的结果。StudentQuery将查询的结果重新构造一个XML数据以返回到提出请求的客户端。

客户端的StudentQuery.html页面接受到上面的XML数据响应后,使用XML解析器解析XML数据后显示给用户。

若客户端使用其它应用程序,只需将应用程序中加入解析XML的程序模块即可,无须对系统进行较大改动,充分体现了J2EE的优势。

3 结束语

本文在分析J2EE架构及优点的基础上介绍了基于J2EE的图书管理信息系统的总体设计思路和初步实现。该系统充分利用了J2EE标准构架的特点与优点,功能齐全,操作方便,投入运行以来,性能稳定可靠,提高了图书管理部门工作效率,顺应了教师和学生对图书信息电子化和部分信息有限度地公开化查询的要求,具有一定的经济效益和社会效益,有一定的推广价值。

参考文献

[1]蔡明,陈永运.J2EE架构的研究与应用[J].计算机应用与软件,21(1).

[2]杨绮,陈伟.基于J2EE的体育管理信息系统研究[J].湖北体育科技,2003,22(4):489-491.

[3]马仁配.J2EE平台在图书馆系统中的应用[J].现代图书情报技术,2003,(4):29-32.

[4]董宛,武强.基于J2EE结构的教学系统的设计与实现[J].计算机工程与应用,2003,(25):229-232.

猜你喜欢

体系结构客户端架构
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
LSN DCI EVPN VxLAN组网架构研究及实现
基于粒计算的武器装备体系结构超网络模型
作战体系结构稳定性突变分析
基于DODAF的装备体系结构设计
基于云计算的航天器控制系统自组织体系结构