当前位置:蚂蚁文档网 > 作文范文 > 基于JBPM公文流转系统设计与实现

基于JBPM公文流转系统设计与实现

时间:2022-06-26 18:45:04 浏览次数:

 基于 JBPM 的公文流转系统的设计与实现

 论文导读:功能稳健且强大的公文流转系统不仅大大高了 OA 系统工作流的转速,而且明确了办公人员的责任归属。J2EE 的开发模式适合工作流性质软件的开发,在开发模式上与 ASP.Net 相似,但具有更强的灵活性。JBPM 原理:总的来说,JBPM 是通过对图进行解释执行的,相对于其它支持技术有:基于消息队列,代码生成。同时它还能被部署在任何一款 JAVA 应用服务器上,而最合适的当然是分层J2EE 结构的 S2SH 框架了。关键词:公文流转,工作流,JBPM,S2SH

 0.引言 公文[1]是政府和企业办公的重要内容,财务报销单、请假单、采购审批等等都是公文的一种形式。

 公文流转[1]就是指借助现代网络 Web 技术,对政府和企业中公文流程创建、修改、审批、发布一系列流转过程进行有效地管理。

 1.公文流转系统 1.1 什么是公文流转系统公文流转系统[2]是 OA 系统的最重要的子系统,能根据用户提出的工作流程,借助工作流引擎实现收文、发文、办理、统计查询等处理活动,能对整个工作流程实时跟踪和对修改审核日志进行记录,并能报告公文在处理过程中的状态。公文流转子系统实现了办公自动化系统的智能化和自动化操作。

 功能稳健且强大的公文流转系统不仅大大高了 OA 系统工作流的转速,而且明确了办公人员的责任归属。

 1.2 开发现状 目前公文流转系统主要的开发技术手段有:

 (1) 基于群件技术 现在市场上主流的群件软件有两种,一是 IBM 公司的 LotusNotes,另外一种是 Microsoft 公司的 ExchangeServer。

 (2) 基于.Net 平台 Windows.Net 框架具有很强的灵活性和扩展性,能够与操作系统平台良好的结合,方便地与各类应用程序进行数据传递。

 (3) 基于 J2EE 平台 J2EE 的开发模式适合工作流性质软件的开发,在开发模式上与ASP.Net 相似,但具有更强的灵活性。在大规模数据处理和安全性方面占有优势,适合开发浏览器形式的应用系统。

 目前市场上没有完全基于 Java 的公文流转系统,由其实现的公文流转功能主要表现在一些由 Java 开发的办公自动化系统中。

 2 相关技术介绍 2.1 工作流简介 工作流[4]顾名思义就是工作的流程,即工作任务流水线化显然是为工作效率的提高而提出来的。

 工作流引擎[5]是工作流系统中枢,实现工作流模型识别并转换为自定义模型,为工作流实例提供运行时的执行环境,包括实例的创建,激活,挂起,终止,并按定义流程和数据信息导航推进实例。

 2.2JBPM 工作流引擎 JBPM[7] 是一个扩展性很强的工作流系统,百分百用 JAVA 语言开发,持久层采用 Hibernate 实现,jBPM 和其它所有基于 Java 的工作流引擎都是采用关系型数据库作为存储介质。同时它还能被部署在任何一款 JAVA 应用服务器上。论文大全。

 JBPM 原理:总的来说,JBPM 是通过对图进行解释执行的,相对于其它支持技术有:基于消息队列,代码生成。

 JBPM 的最大特色就是它有自己的流程定义语言 JPDL。JBPM 先调用JPDL 解释器对 JPDL 文件进行解释,同时把这个文件转化为流程定义实例对象。流程定义拥有与它相关的图对象(如 node,transition,等)。

 3 系统框架详细设计 JBPM 是一个扩展性很强的工作流系统,同时也是纯 JAVA 语言开发的一组 J2SE 组件,持久层采用 Hibernate 实现,只要 Hibernate 支持的数据库 JBPM 都支持。同时它还能被部署在任何一款 JAVA 应用服务器上,而最合适的当然是分层 J2EE 结构的 S2SH 框架了。

 3.1 Struts2/Spring/Hibernate 框架的整合根据系统整合的需求,单一的框架不能胜任所有层面的职责,即各个框架有其自身的优缺点:Hibernate 框架擅长支持模型部分,在对系统的逻辑处理、流程控制与视图并没有得到有效分离;Struts2 是一种 MVC 层的解决方案,它致力于与表示层,对于持久层和逻辑层的支持不是很强;Spring 框架是轻量级容器,通过容器托管所有的业务对象,在程序需要时自动生成装载对象,Spring 框架提供了对 Hibernate 框架的集成支持。

 整合三个框架的方法[8]是:利用 Struts2 框架作为系统的整体基础框架,它负责 MVC 的分离并实现表示层;利用 Hibernate 框架来提供持久层的支持,实现对数据进行持久化操作,从而以实现对象关系映射;业务逻辑层采用 Spring 支持,以业务逻辑的方式对表示层实现业务服务,以 DAO 方式和数据源进行交互。

 在表示层 Struts2 框架中最外面的是由 JSP 和 Struts2 标签组合而成的用户界面。

 业务逻辑层 Spring 框架主要是由业务逻辑组件处理相应的事件,通过DAO 与持久层交互,调用数据库完成业务处理。

 持久层 Hibernate 框架使用 ORM 功能,通过 Hibernate 提供的 HQL 操作实体对象,从而达到操作数据库的目的。

 由上可以看出各组件之间的调用关系:

 1.JSP 页面的用户请求根据 struts.xml 中的配置提交到相应的 Action中。

 2.Action 接到相应的调用后不进行具体的业务逻辑处理,直接把封装了参数的请求委托给 Spring 框架中相应的业务逻辑组件进行处理,仅仅起一个转接的作用。

 3.业务逻辑进行相应的业务处理,调用 DAO 操作持久化对象。

 4.根据 Hibernate 框架中定义的*.hbm.xml 文件映射关系操作数据库中数据。

 3.2 集成 JBPM 考虑到目前平台采用 J2EE 技术架构,同时采用 S2SH技术框架,对于 JBPM 的整合主要是向 S2SH 整合来实现。

 (1)持久化配置 Jbpm 的数据持久化采用 Hibernate 框架,因此对于 Jbpm 在持久化方面 的 整 合 主 要 是 连 个 方 面 :

 一 是 持 久 化 表 的 生 成 , 二 是Hibernate.cfg.xml 文件的配置 在 Mysql 中建立我们的应用库,如 jbpm,然后导入相应的 sql 语句就

 可以生成完整的持久化表。

 在 Eclipse 环境中,利用 Jbpm 插件可以生成默认的 Hibernate.cfg.xml文件(参看相应的生成文件),其中需要修改的主要是数据库的引入部分:

 org.hibernate.dialect.MySQLDialect

  com.mysql.jdbc.Driver

推荐访问:流转 公文 设计

猜你喜欢