想使用activiti整合一个业务系统,奈何现在的activiti7与spring security捆绑了,太过麻烦。听说activiti6并没有捆绑,于是打算采用6来整合。
发现6和7的差别还挺大,在数据库的表中发现,6自带了用户,角色模块:
身份数据表#
1、用户表,act_id_user。
流程引擎的用户信息被保存在act_id_user表中
主要包含字段:
字段 注释
FIRST_ 人名
LAST_ 姓氏
EMAIL_ 用户邮箱
PWD_ 用户密码
PICTURE_ID_ 用户图片,对应资源中的数据ID。
2、用户账号信息表,act_id_info。
Activiti将用户、用户账号和用户信息分为三种数据,其中用户表保存用户的数据,而用户账号和用户信息,则被保存到act_id_info表中。
主要包含字段:
字段 注释
USER_ID_ 对应用户表的数据ID,但没有强制做外键关联。
TYPE_ 信息类型,当前可以设置用户账号(account)、用户信息(userinfo)和NULL三种值。
KEY_ 数据的键,可以根据该键来查找用户信息的值。
VALUE_ 数据的值,类型为varchar,长度为255字节。
PASSWORD_ 用户账号的密码字段,不过当前版本的Activiti并没有使用该字段。
PARENT_ID_ 该信息的父信息ID,如果一条数据设置了父信息ID,则表示该数据时用户账号(信息)的明细数据,例如一个账号有激活日期,那么激活日期就是该账号的明细数据,此处使用了自关联来实现。
3、用户组表,act_id_group。
保存用户组的数据
主要包含字段:
字段 注释
NAME_ 用户组名称
TYPE_ 用户组类型,类型不由Activiti提供,但是在某些业务中,Activiti会根据该字段的值进行查询,字段值由Activiti定义(如Activiti的webservice)。
4、关系表,act_id_membership。
一个用户组下有多个用户,一个用户可以属于不同的用户组,那么这种多对多的关系,就使用关系表来进行描述,关系表为act_id_membership。
主要包含字段:
PS:act_id_membership的两个字段均做了外键约束,写入该表的数据,必须要有用户和用户组数据与之关联。
字段 注释
USER_ID_ 用户ID,不能为NULL。
GROUP_ID_ 用户组ID,不能为NULL。
这些需要没提供API需要自己写dao,service