一、 Flowable中文使用手册
二、No appropriate protocol (protocol is disabled or cipher suites are inappropriate)报错
由于最近将JDK升级到了1.8.351版本,在首次跑项目是报以上错误,原因是jdk版本过高导致,jdk1.8高版本对ssl做了限制。
解决方案:将JDK文件夹下的jre\lib\security下的java.security文件的大概725-730行的jdk.tls.disabledAlgorithms中的SSLv3, TLSv1, TLSv1.1删掉。
三、运行项目生成数据表文件
1.创建空的Maven项目
2.依赖引入
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<!--工作流配置-->
<flowable.version>6.7.2</flowable.version>
<mybatis-plus.version>3.3.2</mybatis-plus.version>
</properties>
<dependencies>
<!-- web启动器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<version>2.6.6</version>
</dependency>
<dependency>
<groupId>org.flowable</groupId>
<artifactId>flowable-engine</artifactId>
<version>6.7.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.30</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.30</version>
</dependency>
</dependencies>
在test下新建测试用的java类
此处注意JdbcUrl,属性全部要,不然容易报错
@Test
public void test01() {
ProcessEngineConfiguration cfg = new StandaloneProcessEngineConfiguration()
.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/flowable?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true")
.setJdbcUsername("root")
.setJdbcPassword("123456")
.setJdbcDriver("com.mysql.cj.jdbc.Driver")
.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
ProcessEngine processEngine = cfg.buildProcessEngine();
}
新建MySQL数据库,然后执行测试类就会自动创建我们所需要的Flowable的表
附上部分执行的日志:
create table ACT_ID_PROPERTY (
NAME_ varchar(64),
VALUE_ varchar(300),
REV_ integer,
primary key (NAME_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:37.341 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: insert into ACT_ID_PROPERTY
values (‘schema.version’, ‘6.7.2.0’, 1)
16:12:37.344 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_BYTEARRAY (
ID_ varchar(64),
REV_ integer,
NAME_ varchar(255),
BYTES_ LONGBLOB,
primary key (ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:37.494 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_GROUP (
ID_ varchar(64),
REV_ integer,
NAME_ varchar(255),
TYPE_ varchar(255),
primary key (ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:37.634 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_MEMBERSHIP (
USER_ID_ varchar(64),
GROUP_ID_ varchar(64),
primary key (USER_ID_, GROUP_ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:37.754 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_USER (
ID_ varchar(64),
REV_ integer,
FIRST_ varchar(255),
LAST_ varchar(255),
DISPLAY_NAME_ varchar(255),
EMAIL_ varchar(255),
PWD_ varchar(255),
PICTURE_ID_ varchar(64),
TENANT_ID_ varchar(255) default ‘’,
primary key (ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:37.906 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_INFO (
ID_ varchar(64),
REV_ integer,
USER_ID_ varchar(64),
TYPE_ varchar(64),
KEY_ varchar(255),
VALUE_ varchar(255),
PASSWORD_ LONGBLOB,
PARENT_ID_ varchar(255),
primary key (ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin
16:12:38.026 [main] DEBUG org.flowable.idm.engine.impl.db.IdmDbSchemaManager - SQL: create table ACT_ID_TOKEN (
ID_ varchar(64) not null,
REV_ integer,
TOKEN_VALUE_ varchar(255),
TOKEN_DATE_ timestamp(3),
IP_ADDRESS_ varchar(255),
USER_AGENT_ varchar(255),
USER_ID_ varchar(255),
TOKEN_DATA_ varchar(2000),
primary key (ID_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin