activity学习笔记(activity入门)

  本篇文章为你整理了activity学习笔记(activity入门)的详细内容,包含有activity learn activity入门 activity6.0教程 activitybook activity学习笔记,希望能帮助你了解 activity学习笔记。

  activiti是什么?

  业务流程管理(BPM)框架,开发人员可直接通过手绘流程图的方式,实现业务流程的控制。

  官网:http://www.activiti.org/

  下载:http://www.activiti.org/download.html

  核心思想:Engine(引擎)-将业务中核心规则抽象出来。以相对稳定的API计算表达式。

  建模语言BPMN:Business Process Model And Notation(业务流程模型和符号),描述业务流程的一种建模标准。使用各种符号描述流程中的各种事件,通过符号间的连线描述一个完整的业务。

  使用步骤:

  部署acitiviti:

  编辑定义流程(BPMN):

  部署流程定义:

  启动流程实例:

  用户查询代办事项(Task):

  用户办理完成任务:

  流程结束:

  25张表:act开头

  re:静态数据和资源表

  ru:运行过程中产生的数据

  ge:通用数据

  核心服务引擎:processEngine

  RuntimeService:

  TaskService:

  HistoryService:

  RepositoryService:

  ProcessInstance:

  ManagementService:

  创建BPMN:

  可以使用activiti-explorer编辑流程文件,或IDEA、Eclipse插件编辑。
 

  可以参考这篇博文:Activiti介绍与官方demo使用(activiti-explorer)与25表的解析

  单个部署流程定义,文件上传方式:

  流程定义:

  


 ?xml version="1.0" encoding="UTF-8"? 

 

   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 org.example /groupId

   artifactId activitiDemo /artifactId

   version 1.0-SNAPSHOT /version

   properties

   maven.compiler.source 8 /maven.compiler.source

   maven.compiler.target 8 /maven.compiler.target

   activiti.version 7.0.0.Beta1 /activiti.version

   slf4j.version 1.7.7 /slf4j.version

   log4j.version 1.2.12 /log4j.version

   /properties

   !--依赖:activiti mysql驱动包 mybatis log4j 数据库连接池--

   dependencies

   dependency

   groupId org.activiti /groupId

   artifactId activiti-engine /artifactId

   version 7.0.0.Beta1 /version

   /dependency

   dependency

   groupId org.activiti /groupId

   artifactId activiti-spring /artifactId

   version ${activiti.version} /version

   /dependency

   dependency

   groupId org.activiti /groupId

   artifactId activiti-bpmn-model /artifactId

   version ${activiti.version} /version

   /dependency

   dependency

   groupId org.activiti /groupId

   artifactId activiti-bpmn-converter /artifactId

   version ${activiti.version} /version

   /dependency

   dependency

   groupId org.activiti /groupId

   artifactId activiti-bpmn-layout /artifactId

   version ${activiti.version} /version

   /dependency

   dependency

   groupId org.activiti.cloud /groupId

   artifactId activiti-cloud-services-api /artifactId

   version ${activiti.version} /version

   /dependency

   dependency

   groupId mysql /groupId

   artifactId mysql-connector-java /artifactId

   version 8.0.21 /version

   /dependency

   dependency

   groupId org.mybatis /groupId

   artifactId mybatis /artifactId

   version 3.4.6 /version

   /dependency

   dependency

   groupId commons-dbcp /groupId

   artifactId commons-dbcp /artifactId

   version 1.4 /version

   /dependency

   dependency

   groupId junit /groupId

   artifactId junit /artifactId

   version 4.12 /version

   scope test /scope

   /dependency

   dependency

   groupId log4j /groupId

   artifactId log4j /artifactId

   version ${log4j.version} /version

   /dependency

   dependency

   groupId org.slf4j /groupId

   artifactId slf4j-api /artifactId

   version ${slf4j.version} /version

   /dependency

   dependency

   groupId org.slf4j /groupId

   artifactId slf4j-log4j12 /artifactId

   version ${slf4j.version} /version

   /dependency

   /dependencies

   /project

  

 

  日志信息配置文件

  日志信息配置文件log4j.properties

  

log4j.rootCategory=debug, CONSOLE, LOGFILE

 

  log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE

  log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender

  log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout

  log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n

  log4j.appender.LOGFILE=org.apache.log4j.FileAppender

  log4j.appender.LOGFILE.file=E:/act/activiti.log

  log4j.appender.LOGFILE.Append=true

  log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout

  log4j,appender.LOGFILE.layout.ConversionPattern=[%p][%d{yy-MM-dd}][%c]%m%n

  

 

  Activiti引擎配置文件

  Activiti引擎配置文件activiti.cfg.xml,配置数据连接信息。如果不指定默认使用H2数据库。这里配置使用mysql。

  

 ?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"

   property name="jdbcUrl" value="jdbc:h2:mem:activiti;DB_CLOSE_DELAY=1000" /

   property name="jdbcDriver" value="org.h2.Driver" /

   property name="jdbcUsername" value="sa" /

   property name="jdbcPassword" value="" /

   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" /

   !--数据库驱动--

   property name="jdbcDriver" value="com.mysql.cj.jdbc.Driver"/

   !--数据库连接--

   property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti?useUnicode=true amp;characterEncoding=utf8 amp;useSSL=false amp;serverTimezone=UTC"/

   !--数据库用户名--

   property name="jdbcUsername" value="root"/

   !--数据库密码--

   property name="jdbcPassword" value="123456"/

   !--false (默认): 当引擎启动时,检查数据库表结构的版本是否匹配库文件版本。版本不匹配时抛出异常。

   true: 构建引擎时,检查并在需要时更新表结构。表结构不存在则会创建。

   create-drop: 引擎创建时创建表结构,并在引擎关闭时删除表结构。--

   property name="databaseSchemaUpdate" value="true"/

  
编写测试类,使用引擎工具类ProcessEngines.getDefaultProcessEngine()启动;

  

public class ActivitiTest {

 

   @Test

   public void testCreateDbTable(){

   //需要使用activiti提供的工具类

   ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

   System.out.println("****processEngine is :****"+processEngine);

  

 

  以上就是activity学习笔记(activity入门)的详细内容,想要了解更多 activity学习笔记的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: