欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

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

时间:2011-04-24  作者:秩名

论文导读:功能稳健且强大的公文流转系统不仅大大高了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文件(参看相应的生成文件),其中需要修改的主要是数据库的引入部分:

<propertyname='hibernate.dialect'>

org.hibernate.dialect.MySQLDialect

</property>

<propertyname='hibernate.connection.driver_class'>

com.mysql.jdbc.Driver

</property>

<property name='hibernate.connection.url'>

 

查看相关论文专题
加入收藏  打印本文
上一篇论文:基于GSM的远程多气体监测系统(图文)
下一篇论文:基于LabVIEW的振动信号采集与分析系统的开发
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
最新计算机论文
读者推荐的计算机论文