JBPM4入门——3.JBPM4开发环境的搭建
本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google
链接:
JBPM入门系列文章:
JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件
JBPM4入门——4.封装流程管理的工具类(JbpmUtil)
1.在eclipse中新建web项目
new --> web --> Dynamic Web Project
2.导jar包
2.1、导jbpm的核心jar包:jbpm.jar

2.2、导其他依赖的jar包:Struts,mysql之类的。这里就不做过多介绍

3.复制相关的xml文件
在jbpm-4.4\jbpm-4.4\examples\src下 把以下文件都复制到项目的src下

3.1导完xml文件:然后修改jbpm.hibernate.cfg.xml文件以便于连接到自己的数据库
前提是需要在mysql中建立jbpm的对应数据库
<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect </property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/jbpm</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">123456</property>
<property name="show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
4.画流程图:
在src下新建一个流程图文件hello.jpdl.xml


生成的相应xml文件为:
<?xml version="1.0" encoding="UTF-8"?> <process name="hello" xmlns="http://jbpm.org/4.4/jpdl">
<start name="start1" g="-1,173,48,48">
<transition name="to state1" to="state1" g="-59,-17"/>
</start>
<end name="end1" g="755,177,48,48"/>
<state name="state1" g="138,170,92,52">
<transition name="to state2" to="state2" g="-33,-16"/>
</state>
<state name="state2" g="323,170,92,52">
<transition name="to state3" to="state3" g="-59,-17"/>
</state>
<state name="state3" g="524,173,92,52">
<transition name="to end1" to="end1" g="-47,-17"/>
</state>
</process>
5.测试
package com.test.test; import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessEngine;
import org.jbpm.api.RepositoryService; public class Test {
public static void main(String[] args) {
ProcessEngine processEngine = Configuration.getProcessEngine();
//RepositoryService 是管理流程定义的发布、删除、查询等操作
RepositoryService resRepositoryService = processEngine.getRepositoryService();
//发布流程
resRepositoryService
.createDeployment()
.addResourceFromClasspath("hello.jpdl.xml")
.deploy();
}
}
6.查看数据库中的表结果:
之前jbpm中是没有一张表的:现在自动帮我们生成了这么多表

打开jbpm4_deployprop表查看里面的数据:刚才的那个hello流程已经发布的数据库中了

JBPM4入门——3.JBPM4开发环境的搭建的更多相关文章
- Kinect for Windows SDK开发入门(一):开发环境配置
[译]Kinect for Windows SDK开发入门(一):开发环境配置 前几天无意中看到微软发布了Kinect for windows sensor,进去看了一下Kinect应用的例子,发现K ...
- windows下vue开发环境的搭建
一 介绍: vue.js是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库 ...
- Windows 8 Metro 应用开发入门(一):开发环境介绍
摘 要 Windows8已经发布,随之而来的基于WinRT的Metro应用也正向我们走来,正像它所宣传的:光滑.快.现代.看习惯了玻璃.立体风格的应用,或许Metro的简洁能给你留下不一样的体验.Vi ...
- CAD控件,CAD插件使用教程:Android开发使用控件--开发环境的搭建
Android开发使用控件入门--环境搭建 2014-12-24 09:57 14人阅读 评论(0) 收藏 编辑 删除 CAD控件.CAD三维控件,手机 ...
- arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc)
arm-linux-gnueabihf-gcc下载 qt下载 arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc) Ubuntu 16.04 安装QT arm嵌入式 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- Idea开发环境中搭建Maven并且使用Maven打包部署程序
1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...
- Linux学习心得之 Linux下命令行Android开发环境的搭建
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...
- Java开发环境的搭建以及使用eclipse从头一步步创建java项目
一.java 开发环境的搭建 这里主要说的是在windows 环境下怎么配置环境. 1.首先安装JDK java的sdk简称JDK ,去其官方网站下载最近的JDK即可..http://www.orac ...
随机推荐
- JS之DOM(二)
一.DOM节点的操作 1.增加: (1). document.creatElement('标签名');创建元素节点 (2). document.creatTextNode('文本内容'):创建文本节点 ...
- java for循环的几种写法
J2SE 1.5提供了另一种形式的for循环.借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象.本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类 ...
- 测试in和or的执行时间
declare @d datetime set @d=getdate() /*你的SQL脚本开始*/ SELECT * FROM T_KNOWLEDGE WHERE KNOWLEDGE_TYPE_OI ...
- js 异步请求封装
1. function ajax(url, onsuccess) { var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ...
- 算法导论:Trie字典树
1. 概述 Trie树,又称字典树,单词查找树或者前缀树,是一种用于快速检索的多叉树结构,如英文字母的字典树是一个26叉树,数字的字典树是一个10叉树. Trie一词来自retrieve,发音为/tr ...
- Bootstrap的clearfix
1.div的内容太多会导致后面的div错位 <!DOCTYPE html> <html> <head> <title>自定义占满wgnu</tit ...
- 《从零开始学习jQuery》及《jQuery风暴》学习笔记
第一章 jQuery入门 1.用$()函数其实是一个事件,使用这个函数调用的方法,会在DOM加载完毕.资源文件加载完之前触发. 第二章 必须知道的JavaScript知识 1.JavaScript实际 ...
- QApplication::alert 如果窗口不是活动窗口,则会向窗口显示一个警告(非常好用,效果就和TeamViewer一样)
void QApplication::alert(QWidget * widget, int msec = 0)如果窗口不是活动窗口,则会向窗口显示一个警告.警报会显示msec 毫秒.如果毫秒为零,闪 ...
- Socket网络通讯开发总结之:Java 与 C进行Socket通讯 + [备忘] Java和C之间的通讯
Socket网络通讯开发总结之:Java 与 C进行Socket通讯 http://blog.sina.com.cn/s/blog_55934df80100i55l.html (2010-04-08 ...
- Myeclipse的web项目移植到Eclipse中需要添加的包
3.jstl.jar 4.standard-1.1.2.jar 把Myeclipse的web项目一直到Eclipse当中需要添加的包主要有一下4个: 1.servlet-api.jar 2.jsp-a ...