Activiti工作流笔记(2)
1.Activiti工作数据表
Activiti用来存放流程数据的表共使用23张表,表名都是以"ACT_"开头,底层操作默认使用mybatis操作
工作流Activiti的表是用来存储流程数据的,而业务的数据需要用户自己创建和维护
在使用Activiti时一定需要业务去关联流程。
以下以MySql数据库为例:
1)使用代码方式创建Activiti工作流需要的23张表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | @Test public void createTable_1() { //创建流程引擎配置对象 ProcessEngineConfiguration processEngineConfiguration = ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration(); //连接数据库的配置 //配置数据库驱动:对应不同数据库类型的驱动 processEngineConfiguration.setJdbcDriver( "com.mysql.jdbc.Driver" ); //配置数据库的JDBC URL processEngineConfiguration.setJdbcUrl( "jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=utf8" ); //配置连接数据库的用户名 processEngineConfiguration.setJdbcUsername( "root" ); //配置连接数据库的密码 processEngineConfiguration.setJdbcPassword( "root" ); //数据库建表策略 /** * public static final String DB_SCHEMA_UPDATE_FALSE = "false";不能自动创建表,需要表存在 public static final String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";先删除表再创建表 public static final String DB_SCHEMA_UPDATE_TRUE = "true";如果表不存在,自动创建表 */ processEngineConfiguration.setDatabaseSchemaUpdate(processEngineConfiguration.DB_SCHEMA_UPDATE_TRUE); //工作流的核心对象,ProcessEnginee对象 ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine(); System.out.println(processEngine); } |
2)使用XML配置文件方式创建工作流需要的23张表
配置文件:activiti.cfg.xml
1 2 3 4 5 6 7 8 9 | <bean id= "processEngineConfiguration" class = "org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration" > <!-- 连接数据的配置 --> <property name= "jdbcDriver" value= "com.mysql.jdbc.Driver" ></property> <property name= "jdbcUrl" value= "jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=utf8" ></property> <property name= "jdbcUsername" value= "root" ></property> <property name= "jdbcPassword" value= "root" ></property> <!-- 没有表创建表 --> <property name= "databaseSchemaUpdate" value= "true" ></property> </bean> |
调用代码:
1 2 3 4 5 6 | @Test public void createTable_2(){ ProcessEngineConfiguration processEngineConfiguration= ProcessEngineConfiguration.createProcessEngineConfigurationFromResource( "activiti-context.xml" ); ProcessEngine processEngine = processEngineConfiguration.buildProcessEngine(); System.out.println( "processEngine:" +processEngine); } |
别荒废时间,谁知道明天会发生什么呢
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)
· 程序员常用高效实用工具推荐,办公效率提升利器!