日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jbpm 4.3 与 spring 集成

發布時間:2025/7/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jbpm 4.3 与 spring 集成 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

jbpm4.2與spring集成有點問題,直接跟據它自己的“開發指南”提供的方法是不能集成的。在官網查到的信息是發布4.2時,忘記更新集成spring的文件。不過4.3已經把該bug改過來了。下面是集成方法。

版本:
jbpm4.3
spring2.5.6
mysql5.1.40

直接從jbpm4.3自帶的文件到src目錄:
從jbpm-4.3"install"src"cfg"hibernate"jdbc復制mysql.hibernate.cfg.xml到src目錄,文件名改為hibernate.cfg.xml。
從jbpm-4.3"install"src"cfg"spring復制applicationContext.xml到src目錄。
從jbpm-4.3"install"src"cfg"jbpm復制spring.jbpm.cfg.xml到src目錄,文件名改為jbpm.cfg.xml。
修改applicationContext.xml、hibernate.cfg.xml的數據庫配置信息,jbpm4.3與spring的集成就完成了,可以自己寫測試文件測試,集成非常容易。

不過在applicationContext.xml和hibernate.cfg.xml兩個文件都要改數據庫信息有點麻煩,所以只復制applicationContext.xml、spring.jbpm.cfg.xml兩個文件到src目錄,把hibernate.cfg.xml的配置整進spring的配置文件applicationContext.xml中。
applicationContext.xml

<beans?xmlns="http://www.springframework.org/schema/beans"?
?????????xmlns:aop
="http://www.springframework.org/schema/aop"?
?????????xmlns:context
="http://www.springframework.org/schema/context"
??????????xmlns:p
="http://www.springframework.org/schema/p"
?????????xmlns:tx
="http://www.springframework.org/schema/tx"
???????xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
?????????xsi:schemaLocation
="
??????????http://www.springframework.org/schema/beans?http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
??????????http://www.springframework.org/schema/aop?http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
??????????http://www.springframework.org/schema/context?http://www.springframework.org/schema/context/spring-context-2.5.xsd
??????????http://www.springframework.org/schema/tx?http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"
>
?
?
<context:annotation-config?/>

<bean
??
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
??p:location
="hibernate.properties"
??p:ignoreUnresolvablePlaceholders
="true"?/>
??
<bean?id="springHelper"?class="org.jbpm.pvm.internal.processengine.SpringHelper"?/>
??
<bean?id="processEngine"?factory-bean="springHelper"?factory-method="createProcessEngine"?/>
??
<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
????
<property?name="dataSource"?ref="dataSource"?/>
????
<property?name="mappingResources">
????????
<list>
????????????
<value>jbpm.repository.hbm.xml</value>
????????????
<value>jbpm.execution.hbm.xml</value>
????????????
<value>jbpm.history.hbm.xml</value>
????????????
<value>jbpm.task.hbm.xml</value>
????????????
<value>jbpm.identity.hbm.xml</value>
????????
</list>
????
</property>
????
<property?name="hibernateProperties">
????????
<props>
????????????????
<prop?key="hibernate.dialect">${dataSource.dialect}</prop>
????????????????
<prop?key="hibernate.hbm2ddl.auto">${dataSource.hbm2ddl.auto}</prop>
????????????
</props>
????
</property>
??
</bean>
??
<bean?id="transactionManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">
????
<property?name="sessionFactory"?ref="sessionFactory"?/>
????
<property?name="dataSource"?ref="dataSource"?/>
??
</bean>
??
<bean?id="dataSource"?class="org.springframework.jdbc.datasource.DriverManagerDataSource">
????
<property?name="driverClassName"?value="${dataSource.driverClassName}"?/>
????
<property?name="url"?value="${dataSource.url}"?/>
????
<property?name="username"?value="${dataSource.username}"?/>
????
<property?name="password"?value="${dataSource.password}"?/>
??
</bean>
</beans>


新建文件hibernate.properties,主要用來配置連接數據庫信息

dataSource.password=123
dataSource.username=root
dataSource.databaseName=jbpmdb
dataSource.driverClassName=com.mysql.jdbc.Driver
dataSource.dialect=org.hibernate.dialect.MySQLInnoDBDialect
dataSource.serverName=localhost:3306
dataSource.url=jdbc:mysql://${dataSource.serverName}/${dataSource.databaseName}
dataSource.properties=user=${dataSource.username};databaseName=${dataSource.databaseName};serverName=${dataSource.serverName};password=${dataSource.password}
dataSource.hbm2ddl.auto=update

以后要改數據庫配置信息也只在這個文件修改就可以了。

測試用的流程swing.jpdl.xml

<?xml?version="1.0"?encoding="UTF-8"?>
<process?name="swing"?xmlns="http://jbpm.org/4.3/jpdl">
???
<start?g="94,64,48,48"?name="start1">
??????
<transition?g="-52,-22"?name="A"?to="A"/>
???
</start>
???
<task?assignee="A"?g="73,195,92,52"?name="A">
??????
<transition?g="-52,-22"?name="B"?to="B"/>
???
</task>
???
<task?assignee="B"?g="266,192,92,52"?name="B">
??????
<transition?g="-40,-21"?name="end"?to="end1"/>
???
</task>
???
<end?g="290,327,48,48"?name="end1"/>
</process>



測試代碼

public?class?Main?{
????
public?static?void?main(String[]?args)??{
????????ClassPathXmlApplicationContext?applicationContext?
=?new?ClassPathXmlApplicationContext("applicationContext.xml");
????????applicationContext.start();
????????ProcessEngine?processEngine?
=?(ProcessEngine)applicationContext.getBean("processEngine");
????????ExecutionService?executionService?
=?processEngine.getExecutionService();
????????TaskService?taskService?
=?processEngine.getTaskService();

????????
//發布流程
????????String?deploymentId?=?processEngine.getRepositoryService().createDeployment()
????????.addResourceFromClasspath(
"resource/swing.jpdl.xml").deploy();
????????System.out.println(
"流程發布ID:"+deploymentId);
????????
????????
//啟動一個流程實例
????????ProcessInstance?processInstance?=?executionService.startProcessInstanceByKey("swing");
????????System.out.println(
"流程實例ID:"?+?processInstance.getId());

????????
//A處理任務
????????List<Task>?taskList_A?=?taskService.findPersonalTasks("A");
????????System.out.println(
"A待處理任務數:"?+?taskList_A.size());
????????
if(taskList_A.size()?>?0){
????????????Task?task?
=?taskList_A.get(0);
????????????taskService.completeTask(task.getId());
????????}
????????
????????
//B處理任務
????????List<Task>?taskList_B?=?taskService.findPersonalTasks("B");
????????System.out.println(
"B待處理任務數:"?+?taskList_B.size());
????????
if(taskList_B.size()?>?0){
????????????Task?task?
=?taskList_B.get(0);
????????????taskService.completeTask(task.getId());
????????}
????????
????}
}


附件是完整的集成文件和測試代碼,僅在spring2.5.6測試過,要運行該部分代碼,需要添加jbpm4.3和spring的相關庫文件。
源代碼:jbpm4.3-spring

總結

以上是生活随笔為你收集整理的jbpm 4.3 与 spring 集成的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 色噜噜狠狠一区二区三区 | av加勒比| 色综合精品 | 国产福利一区在线观看 | 少妇诱惑av | 一级v片| 在线中文字幕亚洲 | 欧美视频自拍偷拍 | 老色批影视 | av免费观看网址 | 久久精品片 | 99日精品| 中文在线а√天堂 | 中文字幕在线一区 | 国产精品16p| 97av视频在线 | 婷婷亚洲精品 | 美女张开腿让男人操 | 一区二区三区精品免费视频 | 国产精品hd | 痴女扩张宫交脱垂重口小说 | 成人做爰www免费看视频网站 | 成人免费版欧美州 | 亚洲欧美网 | 久久影院精品 | 亚洲日本香蕉视频 | 色老头一区二区三区 | 玩日本老头很兴奋xxxx | 久久国产精品国产精品 | 亚洲精品国产成人 | jizz日本在线播放 | 国产高清色| 6080电视影片在线观看 | 农村妇女一区二区 | 在线免费观看亚洲视频 | 国产五区 | 亚洲欧美日韩精品久久亚洲区 | 天天摸天天看 | 亚洲蜜桃精久久久久久久久久久久 | 亚洲精品中文字幕在线观看 | 成人av动漫在线 | 欧美xx视频| 国产精品日 | 热玖玖 | 狠狠干狠狠操 | 久久99国产综合精品免费 | 精品自拍视频 | 口爆吞精一区二区三区 | 中文字幕超清在线免费观看 | 亚洲av成人片色在线观看高潮 | 激情xxx | 精品国产一区二区三 | 午夜不卡视频 | 久久综合88| 日韩欧美亚洲一区二区三区 | 91久久精品夜夜躁日日躁欧美 | 亚洲free性xxxx护士白浆 | 日本三级久久久 | 日本美女久久 | 久久久wwww| 蜜桃av影院| 欧美超碰在线观看 | 黄色一级片国产 | 欧美另类第一页 | 国模无码一区二区三区 | 久久网亚洲 | 国语对白清晰刺激对白 | 少妇毛片 | 日韩免费黄色 | 日韩av免费看| 中文字幕日韩一级 | 麻豆av一区二区三区在线观看 | 亚洲欧美色图视频 | 另类少妇人与禽zozz0性伦 | 色悠久久综合 | 国产精品一区二区无码免费看片 | 2021天天干| 动漫精品一区一码二码三码四码 | 窝窝视频在线 | 久久爱影视i | 樱花影院电视剧免费 | 国产在线青青草 | 日韩不卡免费视频 | 久色视频在线播放 | 91国偷自产一区二区三区老熟女 | 国产福利资源 | 精品一区不卡 | 人人草人| 成人第四色| 亚洲激情国产 | 成人福利在线观看 | 日本三级午夜理伦三级三 | 国产麻豆电影在线观看 | 日韩欧美中文字幕在线播放 | 亚洲精品一区二区三 | 成人av电影在线播放 | 国产美女喷水视频 | 亚洲国产精品系列 | ktv做爰视频一区二区 |