JAVA论文文章代写——基于CORBA/Java的电子商务系统的研制开发

发布时间:2012-04-20 13:42:42 论文编辑:第一代写网

目录
Abstract
Key words
1系统设计要求及目标
2逻辑构架
3系统功能设计
4 基于CORBA/Java平台的实现
 5系统安全性实现
参考文献

【Abstract 】This paper introduces the development of Hehai university library electronic commerce system.In the groundwork of the CORBA/Javaapplication framework,the system is presented which is implemented by various technologies.

【Key words】Electronic commerce; CORBA; Java

最近几年,图书情报业在信息技术的推动和影响下正朝着网络化、数字化图书馆的方向发展。河海大学图书馆已建成了年收录1 万种图书、500 种期刊、100 种报纸、1000本内部资料的中等规模信息资源数据库,迫切需要建立自己的门户网站,进行网上交易。
1系统设计要求及目标
以网络为基础的河海图书电子商务系统,需要强健的平台构架。首先,作为用户,要在该平台上实现网上交易全过程;其次,点到点的支持需要建立在一个健壮的网络应用软件构架上,这种构架能够支持分布广泛的各类用户,具备高度的可扩展性;另外,可以启用复杂的商业规则、审批流程、客户关系,允许与图书馆内部管理信息系统或第三方的商业模式集成。同时,系统必须具有良好的可扩展性、开放性、透明性、容错能力、标准化及事务处理能力。因此河海图书电子商务系统的设计尽量考虑了功能的完备性。
随着电子商务进程的推进,电子商务实现技术及其应用系统都将不断发展变化。为此我们设计系统时注重系统在体系结构上的可扩展性,最大限度地保护图书馆的既有投资。
河海图书电子商务系统是一个数据依赖型系统,所涉及的数据量大、类多,不仅包括用户信息、书目信息、定单信息,还包括付款信息、合同信息等。这就要求保证各类数据在系统内能流转畅通。
河海图书电子商务应用系统,能够达到的目标主要包括:(1)系统功能及工具的完备性;(2)系统体系结构的可扩展性;(3)多种数据源的存取访问能力;(4)基于Web的发布和表现能力。
2逻辑构架
河海图书电子商务系统采用构件化结构,即以CORBA这种分布对象模型的对象作为应用程序的构件。构件可以复用,也便于集成,而且通过继承机制,可较方便地作适应性的修改和补充。在CORBA规范中,提供对象服务的一方称为服务器,引用对象的一方称为客户,双方通过中间件ORB进行交互。
系统采用XML技术作为系统之间或系统内部各模块之间数据交换格式。系统逻辑构架如图1所示。


用户通过常规应用系统或Web应用界面提交请求(诸如定单、书目等),发送给ORB, ORB将区别这些请求的来源以及任务,进行身份认证之类的安全性处理后转发给相应的服务器,服务器完成任务之后返回处理结果,可直接返回客户端,也可以Web页面形式发布。
为了减少数据的复杂性对系统建设的影响,各子系统之间不直接进行交互,数据交互通过数据库来完成。子系统将各自的数据写入数据库,从数据库获得所需的处理数据。
3系统功能设计
河海图书电子商务系统建立了一个网上商务平台。该平台以服务器为中心,包括信息展示、交易支撑和业务支撑3部分。不但河海大学图书馆的销售部门能将自己的馆藏信息快速展示给相关客户,采购部门也能便捷地得到相关供货商、合作伙伴的书目信息,而且各类客户可以在网上在线询价、下单、采购、付款,还可收集应答、定单收集、收款、付货。
系统由客户管理、书目信息管理、采购管理、销售管理、馆藏管理、电子招标、电子拍卖、物流管理等几部分组成。
客户管理包括注册、审核、登录、用户信息维护、用户信息查询、权限管理等功能模块。
书目信息管理子系统包括书目信息目录结构管理、书目信息维护、书目信息共享、书目信息展示以及书目信息查询等5部分。
书目目录的结构管理可根据不同书目类别构筑不同的结构书目目录,从而保证书目属性和表现形式能够适应不同用户的要求。书目信息的维护包括书目信息录入、更改、删除、审核等功能;通过书目信息共享实现了书目信息的定向发布功能;系统通过目录整合功能,为不同用户展示不同书目信息,从而实现了书目信息定向接收功能;系统提供高智能的书目搜索引擎,能够使客户迅速查找和定位相关书目。
销售管理包括应价、定单接收、供书处理、审核、销售跟踪、定单查询、业务统计等模块。
采购管理子系统包括需求管理与外部采购两部分:
需求管理包括需求模块管理、需求申请、审核、跟踪、汇总、统计等模块;外部采购包括询价、采购模块管理、定单创建、修改、审核等模块。
馆藏管理包括馆藏信息维护、入库管理、出库管理、库存维护等4部分。电子招标实现网上标书公布、招标、评标、开标。电子拍卖实现网上拍卖模式。
高效的书籍配送离不开完整的物流管理,系统不但具有调度、组织、安排书籍配送基本功能,同时能够实时跟踪物流动态信息。
4 基于CORBA/Java平台的实现
4.1三层体系结构
河海图书电子商务系统采用客户机、应用服务器和数据库服务器组成的三层体系结构。其优点是应用逻辑被独立地放在应用层便于功能的共享;"瘦客户机"方便用户使用;整个系统的管理维护变得相对简单。
系统采用CORBA中的对象服务来封装各类工具和服务,利用CORBA的名录服务来定位和管理相应的服务对象,使得河海图书电子商务系统具有良好的可重用性、可移植性和互操作性。
在河海图书电子商务系统开发中,三层体系结构具体实现如下:第一层主要以Applet(Java应用程序)实现,也包括一些HTML 页;第二层包括Web 服务器提供基本的WWW服务和CORBA对象提供一些复杂功能的服务;第三层是数据库管理系统,是浏览器上数据的最终提供者。
其工作原理是:首先Web 客户通过Applet从 HTTP服务器中下载页面,接着装载Applet到浏览器中并执行,这个过程还包括通过Java 安全机制的确认。在执行的过程中JavaApplet 可以利用IIOP协议(Internet Inter-ORB Protocol即Internet 环境ORB间通信协议)通过局域网或广域网直接向CORBA服务器-也就是应用服务器的名录服务-发出请求,获取在其上注册的应用服务对象的对象引用。CORBA服务器接到请求后执行响应的应用代码或者与其它的CORBA服 务器协调运算,然后再利用IIOP协议将结果直接返回给客户,或者产生一个新的页面传递给HTTP服务器,再由Web客户浏览。
4.2系统服务器对象实现
IDL(Interface Definition Language)接口代码如下:
IDL(Interface Definition Language)接口代码如下:
interface BookAgent{//接口名称
exception BookAgentException{//自定义一个异常
string s; };
any GetBooks(in boolean metadata);//获取书籍表格内容
any InitOrders(in boolean metadata);//初始化定单
any GetDetails(in boolean metadata,in string bookISBN);
//返回销售明细表内容
any ApplyOrders(in any Delta,out long ErrorCount);
//提交用户定单
};
获取书籍表格内容的GetBooks以是否需要传递元数据为参数,返回数据为书籍数据表格的有关内容;定单初始化函数InitOrders以是否需要传递元数据为参数,返回一份空定单;获取销售明细表内容的GetDetails以是否需要传递元数据及有关书籍ISBN号为参数,返回数据为整个明细表的有关内容;提交用户定单的函数ApplyOrders以有关定单为参数,返回可能发生的错误。
ORB的初始化以及服务对象的产生:
org.omg.CORBA.ORB orb=org.omg.CORBA.ORB.init(args,
null);//初始化ORB
org.omg.CORBA.BOA boa=((com.visigenic.vbroker.orb.ORB)
orb).BOA_init();//初始化BOA
BookAgent manager=new BookAgentImpl("BookManager");
//创建服务对象
boa.obj_is_ready(manager);//建立一个新的服务对象
boa.impl_is_ready();//通知BOA准备就绪
这个服务器程序允许系统人员添加、删除、修改、浏览各种书籍信息及有关的销售信息,也允许系统人员浏览、删除用户定单。
4.3系统客户端实现
ORB的初始化以及服务对象的获得:
org.omg.CORBA.ORB orb=org.omg.CORBA.ORB.init(this,
null);//初始化ORB和 BOA
account_manager=BookAgentHelper.bind(orb,"BookManager
");//获得服务对象
客户端的功能主要通过Applet 实现,Applet定义了用户界面,可根据用户需求向服务对象发出请求并把结果返回给客户等。在客户端,也可提交定单给服务器。如果不发生异常,服务器将把定单保存到数据库中,以便其它子系统获得处理数据。
在该系统中,服务对象可放在一个或多个CORBA服务器中,这些服务对象是自治的,它们可以独立地接受用户的请求并提供服务。各应用系统之间既可独立工作,又可协同工作,ORB 是它们之间的信息总线。利用ORB的这种特性可以给系统带来良好的可扩展性和包容性,新的系统只要按照CORBA标 准来开发便很容易挂到ORB信息总线上。
系统强调服务元素的对象化,即以面向对象的方法来构造整个系统,强调服务对象之间的"协同工作",各服务对象都是"可插拔"的,利用CORBA进行集成。客户面对的仍然只是一个简单的浏览器,体察不到一个请求可能是由若干服务器协作来共同完成的。
4.4系统内部数据交换格式
在该系统中,各功能模块处理的主要是电子交易所涉及的用户、馆藏、定单、书款等业务数据信息。因此,功能模块与功能模块、功能模块与交易中心之间必须存在一种业务数据交互的协议(数据交换格式)。
考虑到数据格式的通用性、灵活性和可扩展性,我们在可扩展标记语言XML的基础上,利用图书馆的领域术语制定了一种数据标记语言。书籍数据描述实例:
<?xml version="1.0"encoding="GB2312"?>
<Book>
<ISBN>7-5053-5304-7/G.459</ISBN>
<Name>数据库系统原理</Name>
<Author>王能斌</Author>
<Publisher>电子工业出版社</Publisher>
<Price unit="元">36.00</Price>
</Book>
 5系统安全性实现
安全性主要体现在交易和信息传输安全性。包括授权机制和通信加密机制两个部分。会员的身份验证是通过系统的会员登录完成的,在登录的过程中建立基于动态密钥的会话。系统利用JDK的 安全机制和CORBA的安全服务功能来实现。
5.1 Java安全机制
系统采用了Java 安全包提供的DSA 算法,它包含了3个算法,其功能分别为:1)生成密钥对;2)签署消息;3)验证签名。
5.2 CORBA安全功能
系统采用CORBA安全服务中的访问控制通过设置不同的组、角色、访问策略控制用户对于系统、程序、对象以及方法的使用权限及使用方式。
系统的安全审核(Security Auditing)通过日志等形式,记录监控的事件。

参考文献
1王能斌.数据库系统原理.北京:电子工业出版社,2000-01
2汪芸.CORBA技术及其应用.南京:东南大学出版社,1999-06
3 Amor D.电子商务基础第一代写网教程.北京北:京希望电子出版社,2000-04
4 Java Programming Student Guide.Sun Microsystems,1999-05
5 XML Programming and Related Technologies Instructor Guide.IBM,