JAVA技术在物流信息平台中的应用

(整期优先)网络出版时间:2010-06-16
/ 2

JAVA技术在物流信息平台中的应用

蔡英萍

(湛江港(集团)股份有限公司通讯信息分公司,广东湛江524019)

摘要:本文根据JAVA技术的先进性和以当前快速发展的物流行业为背景,提出了以JAVA为开发平台、采用时下最流行的三层结构来构建企业物流信息软件的框架。通过建立起一套完善的数据采集、分析、处理,广泛采用并形成了物流理论、物流技术、物流系统,构筑物流信息平台,为物流业的发展提供支撑。

关键词:JAVA技术;物流信息平台;物流理论;物流技术;物流系统

中图分类号:F253.9TN911.2文献标识码:A文章编号:1673-0992(2010)06A-0057-01

1物流平台项目概述

现代物流一个最为显著的特点是以通讯技术、信息技术为代表的高新技术在物流业的应用,通过建立起一套完善的数据采集、分析、处理,广泛采用并形成了物流理论、物流技术、物流系统,构筑物流信息平台,为物流业的发展提供支撑。世界经济贸易的迅速发展,不断赋予“物流”新的涵义。

2JAVA技术介绍

2.1体系架构

企业信息系统的建设多采用三层或多层的体系架构。所谓三层结构,就是在原有的“两层结构”(客户端和服务器端)之间增加了一层组件,这层组件包括事务处理和业务逻辑,一般称之为“业务逻辑层”。随着业务逻辑层的增加,通过将负荷合理地分布到各个层上,原来两层结构中客户端和服务器端的负荷就相应减轻了。

实际上,JAVA的三层架构只是实现J2EE的最基本的结构类型,按照J2EE的设计规范,根据应用系统的大小,有效的、正确的使用多层结构是最大化利用J2EE资源、开发稳定应用系统的有效方法。

2.2J2EE技术

2.2.1简介

J2EE是一种利用Java2平台来简化企业信息系统的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是Java技术,J2EE不仅巩固了Java标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库的JDBCAPI、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技术的全面支持。

技术架构

J2EE使用多层的分布式应用模型,应用逻辑按功能划分为多个组件,各个应用组件根据他们所在的层分布在不同的机器上。图2-1是J2EE典型的四层结构。(尽管从图中可以看到J2EE应用程序既可以是三层结构,也可以是四层结构,但是我们通常将J2EE应用程序的多层结构统称为三层结构。这里因为它们分布在3个不同的位置:客户端机器、J2EE服务器机器和后端的传统的机器。):

(1)运行在客户端机器上的客户层组件;

(2)运行在J2EE服务器上的Web层组件;

(3)运行在J2EE服务器上的业务逻辑层组件;

(4)运行在EIS服务器上的企业信息系统(EnterpriseInformationSystem)层软件。

3JAVA技术运用

3.1系统结构

按照Sun推荐的J2EE设计模式,物流平台应用软件从逻辑上分为四层,分别是Web表现层、服务层、业务逻辑层和持久层。Web层采用Struts架构实现,服务层采用JavaBean,而业务逻辑层和持久层则采用了EJB技术。

3.2系统模型

企业物流信息平台的表现层是基于MVC的Struts核心模型

3.2.1基于MVC的Struts核心模型

MVC是模型(Models)、视图(Views)、控制(Controller)的缩写,它们相互协作的机制如图3-1所示,用户通过提交Requests与Controller组件(通常表现为Servlets)交互。接着Controller组件实例化Model组件(通常表现为JavaBeans或者类似技术),并且根据应用的逻辑操纵它们。一旦Model被创建,Controller决定下一个为用户显示的View(常常表现为JSP),同时View与Model交互操作,获得并为用户显示相关数据。在它被提交到Controller重新开始此操作之前,View可以修改Model的状态。

Struts是采用JavaServlet/JavaServerPages技术开发Web应用程序的开放源码的框架,采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。Struts有如下的主要功能:

(1)包含一个ControllerServlet,能将用户的请求发送到相应的Action对象;

(2)JSP自由tag库,并且在ControllerServlet中提供关联支持,帮助开发员创建交互式表单应用;

(3)提供了一系列实用对象:XML处理、通过JavaReflectionAPIs自动处理JavaBeans属性、国际化的提示和消息。

对于Web应用,需要修改标准的MVC形式。对于MVC的Web改写版,通常也称为MVCModel2或MVC2。

Struts实际上是MVCModel2的开放源代码的实现,是一组相互协作的类、Servlet和JSP标记,它们组成一个可重用的设计。它包含了丰富的标记库和独立于该框架工作的实用程序类,可以当成库使用。

3.2.2基于容器管理的数据库事务

为了解决数据库操作的事务处理问题——即数据库批操作的统一提交和回滚。本系统使用EJB的会话(SessionBean)来实现数据库事务。具体实现原理是利用SessionBean本身是基于EJB容器管理的特点,在SessionBean的容器中实现对本系统软件的数据库操作的事务处理。

3.2.3数据库概念数据模型(ConceptualDataModel)

概念数据模型实际上是数据关系图(E-R图)的扩展。本遵守数据库第三范式设计规则,根据用户提出的实际需求,通过对现实事物的抽象,包括各种表单、数据以及它们之间的关系的抽象,从而为建立数据库物理数据模型做好准备,同时概念数据模型可以直接转换成物理数据模型。

3.2.4数据库物理数据模型(PhysicalDataModel)

物理数据模型即实际数据库中所有的表、视图、存储过程物、触发器等关系数据库对象的抽象化描述。物流信息平台通过物理数据模型图详细标明所有对象的各种属性,例如数据表的主键、外键以及索引等等,具体物理数据模型(PDM)图如下图所示:

数据库物理模型图

本文根据JAVA技术的先进性和以当前快速发展的物流行业为背景,提出了以JAVA为开发平台、采用时下最流行的三层结构来构建企业物流信息软件的框架。实践证明,应用这种方法,企业物流信息平台取得了较大的成功,Java在应用中也充分展示其通用性与完全性等优势,同时也昭示着Java在系统应用开发中的美好前景。