SpringMVC+hibernate整合JBPM4.4

本文介绍了如何将SpringMVC、Hibernate与JBPM4.4进行整合,解决版本冲突和依赖问题。首先列出所需的jar包,然后详细说明各个配置文件的设置,包括Jbpm.cfg.xml、Jbpm.hibernate.cfg.xml、Persistance-mysql.properties和spring-hibernate.xml。在配置完成后,通过一个报销流程的示例,演示了流程定义、部署、任务分配和流转过程,涉及任务分配者、候选人、决策节点等功能。最后展示了不同角色如报销人、经理和财务人员在流程中的操作和任务处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SpringMVC需要的的jar包
这里写图片描述
Jbpm所需jar包
这里写图片描述
Jbpm默认的hibernate版本是hibernate3,若是更高版本的就会有缺少包的问题
一般我们都先配置好springMVC和hibernate后直接引入jbpm的核心包 这里写图片描述即可,若需要jbpm的其他依赖包时,再引入即可。
接下来我们配置配置文件
引入这里写图片描述 两个文件,(引入根目录)

Jbpm.cfg.xml文件配置:

<?xml version="1.0" encoding="UTF-8"?>
<jbpm-configuration>
  <import resource="jbpm.default.cfg.xml" />
  <!-- <import resource="jbpm.tx.hibernate.cfg.xml" />  -->
  <import resource="jbpm.jpdl.cfg.xml" />
  <import resource="jbpm.bpmn.cfg.xml" />
  <import resource="jbpm.identity.cfg.xml" />
  <import resource="jbpm.businesscalendar.cfg.xml" />
  <import resource="jbpm.console.cfg.xml" />
 <!-- <import resource="jbpm.jobexecutor.cfg.xml" /> -->
  <!-- 导入spring配置文件 -->
  <import resource="jbpm.tx.spring.cfg.xml" />
</jbpm-configuration>

Jbpm.hibernate.cfg.xml文件配置:

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE hibernate-configuration PUBLIC
  "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
  <session-factory>
  <!-- jBMP4.4下使用MySQL必须把方言设置为 org.hibernate.dialect.MySQL5InnoDBDialect-->
  <!-- 
    <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
    <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/gzitcast1008jbpm</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.connection.password">admin</property>
    <property name="hibernate.format_sql">false</property>
     <property name="hibernate.show_sql">false</property>
    <property name="hibernate.hbm2ddl.auto">update</property>

    <mapping resource="jbpm.repository.hbm.xml" />
    <mapping resource="jbpm.execution.hbm.xml" />
    <mapping resource="jbpm.history.hbm.xml" />
    <mapping resource="jbpm.task.hbm.xml" />
    <mapping resource="jbpm.identity.hbm.xml" />
 -->
  </session-factory>
</hibernate-configuration>

Persistance-mysql.properties文件配置:

# \u6570\u636e\u6e90\u7684\u9009\u62e9(\u53ef\u9009:jdbcDataSource/c3p0DataSource)
dataSource_reference=jdbcDataSource

# \u9879\u76ee\u540d\u79f0(\u4f8b\u5982:student5,\u6ce8\u610f\u5927\u5c0f\u5199)
project_name=jbpmDemo

# JDBC\u6570\u636e\u6e90\u914d\u7f6e(jdbcDataSource)
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3308/jbpm_demo?createDatabaseIfNotExist=true&characterEncoding=UTF8&useUnicode=true
jdbc.user=root
jdbc.pass=mysql

# hibernate4\u57fa\u672c\u914d\u7f6e
hibernate.format_sql=true
hibernate.show_sql=true
hibernate.hbm2ddl.auto=update
#hibernate.use_outer_join=true
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
hibernate.jdbc.fetch_size=100
hibernate.jdbc.batch_size=30
hibernate.jdbc.use_scrollable_resultset=true

# Hibernate4 \u7f13\u5b58\u914d\u7f6e
#\u9ad8\u901f\u7f13\u5b58\u63d0\u4f9b\u7a0b\u5e8f,\u7531\u4e8espring\u4e5f\u4f7f\u7528\u4e86Ehcache,\u4fdd\u8bc1\u53cc\u65b9\u90fd\u4f7f\u7528\u540c\u4e00\u4e2a\u7f13\u5b58\u7ba1\u7406\u5668(\u9ed8\u8ba4\u4e3a:org.hibernate.cache.ehcache.EhCacheRegionFactory)
hibernate.cache.region.factory_class=org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory
hibernate.cache.use_second_level_cache=true
hibernate.cache.use_query_cache=true
hibernate.cache.use_structured_entries=true
hibernate.Connection.useUnicode=true
hibernate.connection.characterEncoding=UTF8

spring-hibernate.xml文件配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context=
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值