<%@ page contentType="text/html; charset=gb2312"%> 基于J2EE的电子商务开发模型及其实现
网站公告:   ◆北天JAVA技术网热情为java爱好者服务,本网内容包括JAVA(JSP、servlet、EJB、webservice、j2ee、javabean、应用服务器、JavaScript),数据库(MYSQL、SQL Server、Sybase、Oracle、DB2、数据库综合知识),设计研究(设计模式、Struts、Spring、Hibernate、设计框架、设计综合知识),WEB2.0新技术(主要介绍AJAX),以及各种技术的入门、实例、例子等等,欢迎各位多来坐坐!◆  诚邀各位JAVA爱好者加盟!◆  本网站内容丰富,更新快,保证每周20篇以上!  
加入收藏
设为首页
联系站长
承接项目
  相关资源:网站首页 | 免费培训学院 | 技术论坛 | JAVA聊天室 | 作家专栏 | 开发工具 | 认证考试 | 会员俱乐部
  JAVA技术初学者园地 | jsp与servlet | javascript | Java源代码 | EJB | web service | 应用服务器 | JAVA综合知识
  设计研究设计模式 | 设计框架 | Struts | Spring | Hibernate | 开源项目 | 面向对象设计 | 设计综合知识
  数 据 库MYSQL | SQL Server | Sybase | Oracle | DB2 | Informix | Access | 数据库综合知识
  其他资源:AJAX新技术 | 网站开发 | ERP软件 | OA办公软件 | 商业智能BI | 开发综合知识 | 承接项目 | 项目试用

 
 
基于J2EE的电子商务开发模型及其实现
     发布者: 发布时间:2007-03-07
 摘 要 介绍了J2EE体系结构,对J2EE体系结构进行了改进,提出并实现了基于J2EE的电子商务开发模型,可有效解决电子商务系统中存在的性能和可维护性等问题。

 关键词 J2EE;EJB;体系结构;电子商务

 随着网络的普及和发展,电子商务在当前的网络时代扮演着越来越重要的角色。电子商务从最初的静态电子商务已经发展到今天的动态电子商务。动态电子商务能够动态适应企业不断变化的业务策略的电子商务流程及相关系统,反映了在实时条件下实现应用动态集成的概念。动态电子商务的特点是软件应该按照业务的过程设计成可重用的和柔性的组件。J2EE技术采用了Browser/Server结构和组件的思想,将业务逻辑从客户端、服务器端中独立出来,适应于日益复杂化和日益变化的业务逻辑的需要,可以充分满足动态电子商务的开发需求。

 1 J2EE体系结构
 J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关复杂问题的体系结构,可以用于开发大型的、多层次的以及分布式的企业级应用系统。J2EE采用分层结构,层与层之间相互独立,每个层面提供特定服务。在分层结构中,任何一层只要其提供的接口不变,实现发生变化对其他层面没有影响。分层后不仅使各层功能变得简单且易实现,而且具有更好的可维护性和可扩展性。
 
 图1 J2EE体系结构

 如图1所示,J2EE体系结构分为以下几层:
 (1)客户层 客户端通过浏览器或客户端应用程序向最终用户显示被请求的信息。
 (2)中间层 负责逻辑的表示与实现。中间层又分为两层,即Web层和业务逻辑层。
Web层使用Servlet和JSP组件把客户端的请求发送给业务逻辑层的EJB组件处理,并把处理结果发送给客户端。业务逻辑层由若干运行在EJB服务器中的EJB组件组成,负责处理客户端的请求。EJB是一种面向对象的组件,主要用来开发、实现和部署分布式逻辑。
 (3)企业信息系统层 运行企业信息系统软件,主要是数据库系统。
J2EE体系结构通过把表现逻辑、业务逻辑和后端的数据服务分割开来,提供了一种基于组件的设计、开发及部署企业应用程序的模块化方式和高性能多线程的环境。

 2 基于J2EE的电子商务开发模型
 J2EE技术采用分布式组件思想,适于电子商务系统的开发,但采用J2EE技术进行电子商务系统的开发也存在着一些问题,具体表现在以下几个方面。

 1) 客户端浏览器通过远程接口对后端服务器的业务对象进行调用,需要花费网络开销。如果客户端和服务器之间存在过多的方法调用,会导致网络性能问题。
 2) 电子商务系统拥有大量用户,用户与服务器端业务对象间的交互会给网络通信带来很大的压力,使系统性能受到很大破坏,严重的可能会导致系统崩溃。
 3) 层次之间联系过于紧密,客户端和后端的业务对象具有较强的依赖关系,不利于系统的管理和维护。客户端和业务对象之间的直接交互会导致两者的联系过于紧密,同时也使得客户端过于依赖业务对象的具体实现,并负责管理与交互过程有关的业务对象查找和创建,以及不同的对象间相互调用的关系。这样,就会要求客户端进行对此组件过多的操作,从而降低了系统的可维护性。
为了解决以上问题,本文针对电子商务开发的具体实际,对J2EE的体系结构进行了改进,提出了基于J2EE的电子商务开发模型,其结构如图2所示。
 
 图2 基于J2EE的电子商务开发模型

 基于J2EE的电子商务开发模型分为四层,分别是客户层、Web层、业务层和企业信息系统层。其中,客户层为通过浏览器对电子商务系统进行访问的网络终端用户,一般又分为一般用户与会员和管理员。一般用户与会员可通过访问电子商务系统进行信息查询和产品定购等操作;而管理员则负责对电子商务系统进行管理和维护。

 Web层实现与客户层的交互,处理客户层的请求并做出响应。Web层向客户层提供了两个接口,分别是电子商务系统接口和管理接口。客户层的所有用户都可以通过电子商务系统接口访问电子商务系统;而管理接口只能由管理员进行访问,一般用户与会员则无此权限。Web层的功能通过Web组件实现对用户处理数据的表达。

 业务层实现与Web层的交互,处理Web层的数据处理请求,是模型的核心层。模型对业务层的业务对象进行封装,使Web层不直接访问EJB组件,而是通过系统访问会话Bean和子系统会话Bean来实现对EJB组件的访问。

 企业信息系统层运行企业信息系统软件,例如企业资源计划、大型机事务处理、数据库系统及其他遗留信息系统。企业信息系统层实现与业务层的交互,一般处理业务层的数据库操作。

 3 基于J2EE的电子商务开发模型的实现
 基于J2EE的电子商务开发模型的核心是业务层,其实现如下:
 
 图3 基于J2EE的电子商务开发模型中对EJB组件的访问过程

 系统访问会话Bean向Web层提供对系统访问的统一接口。系统访问会话Bean包含一个工作流中所有相关对象的交互,并实现其中的业务逻辑,管理工作流中相关对象的生命周期。对一般EJB方法的调用,系统访问会话Bean只提供了一个对系统访问的接口,而不提供其方法的具体实现。

 电子商务系统可分为若干个子系统,每个子系统使用子系统会话Bean把一些相关的EJB组件封装在一起。子系统会话Bean负责管理业务对象,并向系统访问会话Bean提供对子系统的访问接口,还可以处理底层对象的交互过程,由此屏蔽了复杂的对象交互。

 对EJB组件的访问过程如图3所示。首先调用系统访问会话Bean的管理方法;然后,管理方法通过参数确定相应的子系统,查找相应的子系统会话Bean,调用其相关方法;最后,子系统会话Bean通过本地接口调用EJB组件。

 4 基于J2EE的电子商务开发模型性能分析
 基于J2EE的电子商务开发模型通过对系统的业务层的分层和对相关业务对象的封装,可有效解决电子商务系统中存在的问题。

 首先,基于J2EE的电子商务开发模型通过提供对系统访问的统一接口,减少了暴露给Web层的业务对象。此模型减小了Web组件和业务对象的耦合度,从而降低了Web层和业务对象之间的依赖关系。业务对象只负责对自己的数据和逻辑进行管理,而模型可以对业务对象间的交互进行管理。此模型提供了更好的可管理性、更好的灵活性以及系统发生变化时更强的处理能力。

 其次,基于J2EE的电子商务开发模型可以提高系统的性能。由于消除了Web组件与业务数据和业务对象的直接交互,减少了客户端和服务器端的网络开销。子系统会话Bean可对相关的EJB组件及其交互进行管理,这样可通过定义并实现一些管理方法进行粗粒度的处理,从而减少了远程访问的次数,节省了网络开销。在此模型中,对EJB组件的调用一般通过本地接口来实现,即进行本地访问;相对于远程访问,本地访问在同一JVM中进行,可节省开销,提高系统性能。而且,所有的业务对象之间的交互都是通过系统访问会话Bean和子系统会话Bean以粗粒度的方式实现的,这也有效地改进了系统的性能。

 最后,基于J2EE的电子商务开发模型封装了底层的业务对象,只向Web层提供一个访问接口,可有效控制Web层组件对底层业务对象的直接访问,提高了系统的安全性。此模型向用户隐藏业务对象间的交互过程和依赖关系,从而使得系统更加容易管理,并提供相当的灵活性。而且,模型提供了一套统一的用户访问机制,便于管理用户对于服务的请求与访问。

 5 结束语
 J2EE在开发电子商务系统方面具有无可比拟的优势,它提供中间层集成框架用来满足高可用性、高可靠性以及可扩展性的应用的需求,通过提供统一的开发平台,降低了开发多层应用的复杂性,同时对现有系统集成提供强有力支持。本文对J2EE体系结构进行了分析,并在此基础上,对J2EE的体系结构进行了改进,提出了基于J2EE的电子商务开发模型,可有效解决电子商务系统存在的性能和可维护性等问题。本文所给出的电子商务开发模型已在作者承担的企业信息系统中应用,并取得了良好的效果。

 参考文献
 [1] Paul J. Perrone, et al.著, 张志伟,谭郁松,张明杰 译. J2EE构建企业系统——专家级解决方案. 北京: 清华大学出版社, 2001
 [2] John Hunt, Chris Loftus 著, 周立斌 等译. 精通J2EE——Java企业级应用. 北京: 清华大学出版社, 2004
 [3] Martin Bond 等著, 周辉 等译. 21天学通J2EE(第二版). 北京: 人民邮电出版社, 2005
 [4] William Crawford, Jonathan Kaplan 著, 刘绍华,毛天露 译. J2EE设计模式. 北京: 中国电力出版社, 2005
 [5] Deepak Alur,John Crupi,Dan Malks 著, 刘天北,熊节 等译. J2EE核心模式(第二版). 北京: 机械工业出版社, 2005
 [6] 李卉,殷兆麟,金铁锋.Session Fa ade设计模式及其在J2EE系统开发中的应用研究. 计算机工程,2005, 31(14): 228-230
 收稿日期:11月24日 修改日期:12月5日
 作者简介:冯泽涛(1977-),男,山东工商学院教师,硕士,主要研究方向:网络工程与管理信息系统。

(转载文章请保留出处:北天JAVA技术网(www.java114.com))
 
更多精彩文章:
使用Annotation设计持久层
试问:动态语言是否将会挽救Swing?
JSP牵手JSF打造完美的Web应用
Java的中文编程与配置心得
用JAVA实现线程等待提示框
SOA的发展历史与标准规范
 
最近评论:
        
你曾悄悄的来过!
wow gold,wow gold,wow gold,ffxi gil max(7285)
        
冰封的往事!
wow power leveling,wow gold,wow power leveling,wow gold max(4295)
        
冰封的往事!
wow power leveling,wow gold,WoW Gold,wow gold max(2158)
        
高薪诚聘IT讲师
软件测试工程师(教学督导) 软件测试工程师(教学督导) 电子邮箱: youjie.yao@jb-aptech.com.cn 工作地点: 北京市 招聘人数: 4 工作年限: 一年以上 薪水范围: 面议 学 历: 本科 职位描述: 职位描述: 部门:软件测试事业部 公司内部职位名称:教学督导 1、协助培训中心建立讲师团队 2、保证培训中心学术团队按照标准化进行运作 3、保证培训中心教学质量和学员就业质量 4、演示关键事件的执行方式(如授课等) 备注:需要较强的沟通能力,能出差,之前做过售前和技术支持者优先 1、本科要求1年以上的软件开发经验或2年以上软件测试经验(在校期间项目开发经验或项目测试经验可以计算在内) 2、硕士可以应届毕业生 3、年龄大于24周岁 4、有培训经验或学生工作经验者优先考虑 技术要求: 具备如下技能当中之一即可。 A类技能: 熟练掌握C、C++、Java、C#中任意一种编程语言 了解软件体系结构 了解J2EE或.net架构; 掌握计算机原理及软硬件知识 掌握网络基础知识及TCP/IP协议 熟练配置Windows或Linux操作系统及常用服务配置 熟悉SQLserver数据库产品的管理和配置 B类技能: 掌握C、C++、Java、C#中任意一种编程语言 熟悉软件测试流程 掌握常用测试技术,能够熟练设计软件测试用例 熟练编写测试计划 掌握功能或性能测试工具 基本素质: 1、表达能力强、口齿清晰 2、较强的沟通意识、思路清晰 3、细心、耐心、有团队精神 有意者请将简历发送至邮箱 备注:请应聘者标注招聘信息来源。 软件测试培训师 电子邮箱: youjie.yao@jb-aptech.com.cn 工作地点: 北京市 招聘人数: 10 工作年限: 一年以上 薪水范围: 面议 学 历: 本科 职位名称 讲师 所属部门 学术质量部 直接主管 学术质量部经理 职位目标 在学术质量部经理的领导下,执行授课流程和事件,并参与中心相关学术活动,达到提高学员的满意度、合格率、就业率、就业质量的目标 工作职责 范围 内容 1、授课 1、 备课(撰写教案) 2、 协助搭建教学环境 3、 讲授知识点 4、 解答学员问题(理论课、实践课、讨论课) 5、 批改作业及记录作业批改情况 6、 阅卷、并做试卷分析、总结 7、 组织实施项目实训 8、 整理反馈教学经验(包括教案、典型案例) 2、开发课件 1、 开发BTEST沙龙的课件 2、 开发试题,组内部测试、结业考试样卷 3、参与市场活动 1、 招生演讲 招聘要求 基本条件 1、本科(含)以上学历,身体健康 2、认同北大青鸟企业文化和BTEST产品,自觉维护企业形象和产品 经验要求 1、1年以上的软件开发经验或2年以上软件测试经验(在校期间项目开发经验或项目测试经验可以计算在内) 2、研究生毕业可不需要工作经验 技能要求 以下两类专业技能,至少具备一类: a、测试类技能:熟悉软件测试流程、测试用例设计、测试计划、常用测试技术、有使用测试工具经验者优先; b、开发类技能:熟悉C、C++、Java、C#中任意一种编程语言; 搭建环境类技能:了解计算机原理及PC机软硬件知识,了解网络基础知识及TCP/IP协议,了解Windows或Unix/Linux操作系统管理; 素质要求 1、 较强的沟通能力和表达能力 2、 责任心强、职业意识强 3、 形象佳、有亲和力、口齿清晰
        
标 题:   
内 容:   
 
                                  
 
免责声明:该文章由网友发表,如果对您造成侵权,请联系站长

首页 - 承接项目 - 网站地图 - 联系我们 -
版权所有北天JAVA技术工作室 ICP证号:粤ICP备06079815号