SpringBoot整合Activiti
SpringBoot 2.x整合Activiti6.0出現(xiàn)各種坑
首先引入依賴
<!--目前最新版2019年8月22日 6.0.0-->
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring-boot-starter-basic</artifactId>
<version>6.0.0</version>
</dependency>
<!--注意數(shù)據(jù)庫(kù)連接版本-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
接著是配置文件 此處有個(gè)大坑
需要在連接數(shù)據(jù)庫(kù)的url上加上nullCatalogMeansCurrent=true
酸些,降低mysql-connector-java
到5.x不用加诗充,我的數(shù)據(jù)庫(kù)是mysql8
spring.datasource.url=jdbc:mysql://localhost:3306/activiti6?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC&nullCatalogMeansCurrent=true
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=123456
#自動(dòng)創(chuàng)建豁生、更新、驗(yàn)證數(shù)據(jù)庫(kù)表結(jié)構(gòu)
#掃描processes下的流程文件 杉适,通過(guò)源碼發(fā)現(xiàn)默認(rèn)是這樣掃描的
#spring.activiti.process-definition-location-prefix=classpath:/processes/
#不校驗(yàn)流程文件,默認(rèn)是開(kāi)啟的
spring.activiti.check-process-definitions=false
#數(shù)據(jù)結(jié)構(gòu)更新,默認(rèn)是開(kāi)啟的怕膛,
#spring.activiti.database-schema-update=true
#保存歷史數(shù)據(jù)級(jí)別設(shè)置為full最高級(jí)別,便于歷史數(shù)據(jù)的追溯
#通過(guò)進(jìn)入源碼發(fā)現(xiàn)默認(rèn)是audit級(jí)別
#spring.activiti.history-level=full
Application啟動(dòng)入口排除activiti的SecurityAutoConfiguration
import org.activiti.spring.boot.SecurityAutoConfiguration;
@SpringBootApplication(exclude = {SecurityAutoConfiguration.class, org.activiti.spring.boot.SecurityAutoConfiguration.class})
啟動(dòng)項(xiàng)目數(shù)據(jù)庫(kù)即可生成28張表:
結(jié)果.png
然后就可以開(kāi)搞了
代碼地址:https://gitee.com/lingkang_top/activiti-demo