<script type="text/javascript"> google_ad_client = "pub-8800625213955058"; /* 336x280, 创建于 07-11-21 */ google_ad_slot = "0989131976"; google_ad_width = 336; google_ad_height = 280; // </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 葛光祥 UML作为面向对象的建模语言越来越受到业界的重视,MVC组件化体系理论发展时间已经很长,以基于Java的Servlet、JSP和JavaBean动态网页为基础的电子商务开发技术正得到广泛的应用,本文集合以上诸技术,探讨组件化技术在电子商务系统中的应用。 相关技术介绍 UML建模方法 UML(Unified Modeling Language 统一建模语言)作为国际OMG组织的一个标准,是一种以面向对象技术为核心的软件系统通用可视化建模工具。UML分别从静态和动态两个角度提供了图形化的表达工具来对应用系统建模,其中使用较广泛的有用例图(Use Case Diagram)、类图(Class Giagram)和顺序图(Sequence Diagram动态)。 MVC体系 MVC体系是指应用系统的业务模型(Module)、界面(View)、控制(Control)层次体系,M层主要实现系统的业务逻辑和数据逻辑,V层主要实现系统的显示逻辑,C层主要实现系统的控制流程。MVC体系保持系统业务逻辑和数据逻辑、控制逻辑、显示逻辑的相互独立性,从而实现面向问题域本身构建业务逻辑和数据逻辑,面向具体应用域设计控制逻辑和显示逻辑,在系统业务流程发生调整时,无须修改或尽可能少修改业务逻辑和数据逻辑,在问题域本身的业务规则、业务算法发生变化时,只修改M层组件,从而实现系统组件的独立性。 由于目前电子商务系统基本仍采用非面向对象的关系数据库系统(DBMS),部分数据逻辑由DBMS实现,所以我们可以将MVC体系扩充成MVCD体系。 Servlet、JSP、JavaBean开发技术 Servlet、JSP、JavaBean技术是目前电子商务系统开发中应用较普遍的基于Java语言的开发技术,JavaBean是Java类,JSP是在Web静态页面中嵌入JavaBean和Java代码段从而实现动态页面的技术,Servlet是一种特殊的Java类,可以更方便更高效地实现Web系统请求页面的数据域的获取,调用相应JavaBean实现业务逻辑和数据逻辑后,将JavaBean对象中的数据域显示在JSP页面上。Servlet、JSP、JavaBean实现的Web体系如下图所示。
相关技术的集合 从以上技术的介绍可以看出,UML可以从系统的分析和设计建立组件化应用的模型,并采用不同工具分别描述控制逻辑组件和业务逻辑、数据逻辑组件,MVC体系提供了抽取控制逻辑组件和业务逻辑、数据逻辑组件的理论基础,而Servlet、JSP、JavaBean提供了实现相关组件的实现手段,可见结合UML的建模语言、MVC的分层体系理论、基于Java的Servlet、JSP、JavaBean技术,可以方便地实现组件化的电子商务系统的开发。相关技术在组件化系统开发中的应用如下表所示。 表1 相关技术在组件化系统开发中的应用 UML工具 MVCD体系 Java开发技术 显示逻辑 V层 HTML静态页面、JSP动态页面、ViewBean 控制逻辑 顺序图 C层 Servlet 业务逻辑 类、类图 M层 JavaBean 数据逻辑 类(集合DBMS的功能) D层 JDBC 组件功能的分配 在以上体系结构的电子商务系统中,要科学地将系统功能分配到各个层次中,采用相应的开发技术来实现。 M层实现的功能 M层主要实现系统的业务逻辑和数据逻辑,不需要考虑页面的显示方式和具体业务发生时的控制流程。 V层实现的功能 V层包括ViewBean和页面,ViewBean通过Servlet得到各域的值,页面Javascript代码中的Java代码段直接从ViewBean中取各域的值,当页面显示方式有变化时,可直接修改ViewBean,不需要修改JavaBean的业务逻辑和数据逻辑。 C层实现的功能 C层主要实现以下功能:判断和循环的逻辑控制;JavaBean的实例化;从页面上取值赋给JavaBean各域;调用JavaBean方法实现业务逻辑和数据逻辑;给ViewBean各域赋值,实现页面显示;将需要在页面上显示的JavaBean和ViewBean放入Session中,供页面显示;执行数据连接的建立和释放功能,并做事务处理,适时完成事务的提交和回滚功能;异常处理和重定向到显示页面功能。
