activiti学习笔记1---20170323
来源:互联网 发布:cpu测试软件 linux 编辑:程序博客网 时间:2024/06/04 19:29
一、activiti下载:
下载地址http://activiti.org/download.html;
二、maven工程simple project需要的jar依赖关系
org.activiti:activiti-engine:jar:5.17.0+- org.activiti:activiti-bpmn-converter:jar:5.17.0:compile| \- org.activiti:activiti-bpmn-model:jar:5.17.0:compile| +- com.fasterxml.jackson.core:jackson-core:jar:2.2.3:compile| \- com.fasterxml.jackson.core:jackson-databind:jar:2.2.3:compile| \- com.fasterxml.jackson.core:jackson-annotations:jar:2.2.3:compile+- org.activiti:activiti-process-validation:jar:5.17.0:compile+- org.activiti:activiti-image-generator:jar:5.17.0:compile+- org.apache.commons:commons-email:jar:1.2:compile| +- javax.mail:mail:jar:1.4.1:compile| \- javax.activation:activation:jar:1.1:compile+- org.apache.commons:commons-lang3:jar:3.3.2:compile+- org.mybatis:mybatis:jar:3.2.5:compile+- org.springframework:spring-beans:jar:4.0.6.RELEASE:compile| \- org.springframework:spring-core:jar:4.0.6.RELEASE:compile+- joda-time:joda-time:jar:2.6:compile+- org.slf4j:slf4j-api:jar:1.7.6:compile+- org.slf4j:jcl-over-slf4j:jar:1.7.6:compile
三、添加连接数据库需要的jar依赖【使用oracle11g数据库, 数据库连接使用druid】
四、pom.xml文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.zqy.activiti</groupId> <artifactId>HelloWorld</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <junit.version>4.12</junit.version> <activiti.version>5.20.0</activiti.version> <commons-email.version>1.2</commons-email.version> <commons-lang3.version>3.3.2</commons-lang3.version> <mybatis.version>3.2.5</mybatis.version> <springframework.version>4.0.6.RELEASE</springframework.version> <joda-time.version>2.6</joda-time.version> <slf4j.version>1.7.6</slf4j.version> <ojdbc6.version>11.2.0.3</ojdbc6.version> <druid.version>1.0.29</druid.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> </dependency> <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-engine</artifactId> <version>${activiti.version}</version> </dependency> <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-process-validation</artifactId> <version>${activiti.version}</version> </dependency> <dependency> <groupId>org.activiti</groupId> <artifactId>activiti-image-generator</artifactId> <version>${activiti.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-email</artifactId> <version>${commons-email.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons-lang3.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>${joda-time.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>${ojdbc6.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>${druid.version}</version> </dependency> </dependencies></project>
五、junit test方法创建流程引擎【自动创建activiti需要的数据表】
5.1创建方式一(java代码设置数据连接)
@Testpublic void testCreateTable(){ProcessEngine processEngine = ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration().setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE)//.setDatabaseSchema("ACT").setJdbcUrl("jdbc:oracle:thin:@127.0.0.1:1521:orcl").setJdbcDriver("oracle.jdbc.driver.OracleDriver").setJdbcUsername("act_test").setJdbcPassword("act_test").setAsyncExecutorEnabled(true).setAsyncExecutorActivate(false).buildProcessEngine();System.out.println(processEngine);}
5.2创建方式二,使用默认路径classpath下的activiti.cfg.xml创建流程引擎[spring管理]
activiti.cfg.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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration"> <property name="jdbcUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl" /> <property name="jdbcDriver" value="oracle.jdbc.driver.OracleDriver" /> <property name="jdbcUsername" value="act_test" /> <property name="jdbcPassword" value="act_test" /> <property name="databaseSchemaUpdate" value="true" /> <property name="jobExecutorActivate" value="false" /> <property name="asyncExecutorEnabled" value="true" /> <property name="asyncExecutorActivate" value="false" /> <property name="mailServerHost" value="mail.my-corp.com" /> <property name="mailServerPort" value="5025" /> </bean></beans>流程引擎创建如下:
@Testpublic void testCreateTableByXml(){ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResourceDefault().buildProcessEngine();System.out.println(processEngine);}
5.3创建方式三,指定activiti配置文件创建流程引擎【使用druid配置, 使用spring管理】
activiti的配置文件activitiBean.cfg.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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"><property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl" /><property name="username" value="act_test" /><property name="password" value="act_test" /><!-- 配置初始化大小、最小、最大 --> <property name="initialSize" value="1" /> <property name="minIdle" value="1" /> <property name="maxActive" value="20" /> <!-- 配置获取连接等待超时的时间 --> <property name="maxWait" value="60000" /> <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --> <property name="timeBetweenEvictionRunsMillis" value="60000" /> <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --> <property name="minEvictableIdleTimeMillis" value="300000" /> <property name="validationQuery" value="SELECT 'x'" /> <property name="testWhileIdle" value="true" /> <property name="testOnBorrow" value="false" /> <property name="testOnReturn" value="false" /> <!-- 打开PSCache,并且指定每个连接上PSCache的大小 --> <property name="poolPreparedStatements" value="true" /> <property name="maxPoolPreparedStatementPerConnectionSize" value="20" /> <!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 --> <property name="filters" value="stat" /></bean><bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration"><property name="dataSource" ref="dataSource"></property><property name="databaseSchemaUpdate" value="true" /><property name="jobExecutorActivate" value="false" /><property name="asyncExecutorEnabled" value="true" /><property name="asyncExecutorActivate" value="false" /><property name="mailServerHost" value="mail.my-corp.com" /><property name="mailServerPort" value="5025" /></bean></beans>创建流程引擎代码如下:
@Testpublic void testCreateTableByBeanXml(){ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activitiBean.cfg.xml").buildProcessEngine();System.out.println(processEngine);}
注意:
使用oracle11g,创建流程引擎生成activiti数据表时, 初次创建可能会抛出异常, 配置DatabaseSchema为ACT后,可正常创建;
0 0
- activiti学习笔记1---20170323
- Activiti学习笔记1
- activiti学习笔记1 基本概念
- activiti学习笔记(1)
- Activiti学习笔记
- activiti学习笔记(一)
- Activiti学习笔记
- activiti学习笔记
- Activiti 学习笔记 小结
- Activiti 学习笔记 小结
- Activiti工作流学习笔记
- activiti工作流学习笔记
- Activiti学习笔记一初识activiti面目
- Activiti框架学习笔记总结
- Activiti 学习笔记一到六小结
- activiti学习笔记(六) 监听器
- activiti工作流入门学习笔记
- activiti工作流框架学习笔记
- Spring MVC返回XML格式的数据
- hdu2391(dp)
- 事件event
- onunload和onbeforeunload方法的区别
- 链表插入排序-LintCode
- activiti学习笔记1---20170323
- Spring MVC框架form标签和input标签的使用
- [天池竞赛系列] 历届天池竞赛答辩PPT和视频
- fresco的初次使用
- 并发编程——线程通信
- i++和++i的区别,及其线程安全问题
- Java之Java中的变量--书(P23)
- Shell:重复执行一个命令n次
- 选择关系型数据库还是非关系型数据库