Spring AOP动态代理在工作流管理系统中及研究.docVIP

Spring AOP动态代理在工作流管理系统中及研究.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
组织管理论文:Spring AOP的动态代理在工作流管理系统中的研究 摘 要: 传统的工作流管理系统的耦合度越来越紧密,使得系统的伸缩性变得非常弱,导致系统的互操作性和可重用性很差。针对以上问题,我们利用Spring AOP的动态代理机制,提出了基于面向方面编程技术的解决方案,该方案使得日志模块、安全模块等与核心业务代码之间形成最低耦合性,避免了代码分散与代码纠缠等问题,在降低模块间耦合度,提高模块复用性和系统可扩展性方面有明显的优势。 关键词: 工作流管理系统;耦合度;Spring AOP;动态代理机制 引言 工作流技术经过多年的发展,已经在企业内部得到很好的应用,工作流的部署为企业带来了效益,并仍然是许多公司研究应用的技术热点。但是,新的技术革新导致了工作流概念的延伸,传统的工作流管理系统耦合度越来越高,以致系统的互操作性和可重用性很差,不便于信息交换和调整。 基于以上问题本文引入了Spring AOP的动态代理机制,提出了基于面向方面编程技术的解决方案,它将横切关注点以一种更加通用的方式剖解开封装的对象,并将那些影响了多个类的公共行为方法封装到一个可重复使用的模块中,使这些组件专注于自身业务,完全不知道其他涉及到的系统服务模块,目的是解决系统中模块间的紧耦合问题,打破对象的封装,减少代码的冗余度,增强可读性,提高应用系统的质量。 1 工作流技术概述 工作流技术起源于生产组织和办公自动化领域,是实现企业业务流程建模、模拟分析、优化处理、控制与集成以及最终实现业务流程自动化的核心技术。其目的是通过将一个具体的工作分解成多个任务、角色,按照一定的规则和过程来约束这些任务的执行和监控,以达到提高办事效率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目的。 1.1 工作流参考模型 根据工作流联盟(WfMC,Workflow Management Coalition)的定义,工作流是一类能够完全或者自动执行的管理过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照预先定义好的工作逻辑完成工作流实例的执行。工作流技术是流程建模和流程管理的核心,为了实现工作流技术的标准化和开放性,使得不同的工作流管理系统之间能够进行信息交换和协作,WfMC提出了一个共性的工作流管理系统参考模型。如图1所示。 1.2 工作流引擎 工作流引擎作为系统控制和运行的核心内容是驱动流程流动的主要部件,它负责过程定义的执行,包括创建、执行和管理工作流过程实例、控制过程实例的流转并且提供状态信息,协调不同的工作流程,维护工作流所需的数据,处理客户端需求及调用外部应用程序,为工作流提供良好的运行环境。 jBPM是一款功能强大、小巧灵活的工作流引擎,它既可以以嵌入式模式与我们的业务模块运行在同一个应用之内,也可以以独立的模式单独运行在一个应用当中。jBPM最大的特色就是它的业务逻辑定义没有采用目前的BPEL或WfMC标准去实现流程引擎,采用的是一种轻量级的XML结构的流程描述语言JPDL(Jbpm Process Definition Language),JPDL将一个业务流程看作是一个UML状态图并详细定义了状态图的每个部分。相比另外的两种标准而言,JPDL语言更加简单,也更容易读懂。 1.3 工作流管理系统的缺陷 随着系统规模和复杂程度的日益增加,在企业业务和应用技术两个方面发展合理的促使下,工作流管理系统不断演化和发展。传统的工作流管理系统的耦合度越来越紧密,使得系统的互操作性和可重用性很差。要满足当前的业务需求,工作流管理系统必须采用新的技术手段支持以过程为核心的管理模式,实现新的特征。因此,我们引入了AOP的相关技术。 2 AOP技术简介 2.1 AOP基本理论 面向方面(切面)编程(Aspect Oriented Programming,AOP),它是面向对象编程(Object Oriented Programming,OOP)的延续,它将横切关注点以一种更加通用的方式剖解开封装的对象内部,并将那些影响了多个类的公共行为封装到一个可重用模块,使这些组件专注于自身业务,完全不知道其他涉及到的系统服务模块,目的是解决OOP中的对象紧耦合问题,降低模块间的耦合度,减少代码的冗余,增强可读性,提高软件质量。 AOP思想的本质是用一种松散耦合的方式来实现独立的关注点,通过组合这些实现来建立最终的系统。一个关注点就是一个特定的目的,或者一个系统需要实现的目标。关注点是应用系统中很多的模块都用到的核心需求,如:日志、事务、验证等横切关注。开发人员通过面向方面的编程,可以将程序的责任分开,使对象与方面彼此独立。关注点分为两部分:横切关注点和核心业务关注点

文档评论(0)

chqs52 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档