此文目的:
对网络上的关于对activiti 使用做一个总结,因为很难找到一个非常完整的代码结构。以后大家不用再东拼西凑。
本文是重写activiti的 用户部分,使用自定义管理器,也就是说不再使用act_id_*的数据库表。
一共创建或者修改6个文件。
1.CustomUserEntityManagerFactory.java
这是需要创建的第一个文件,是自定义的User的管理工厂类。
@Service public class CustomUserEntityManagerFactory implements SessionFactory{ // 使用自定义的User管理类 @Resource private CustomUserEntityManager customUserEntityManager; @Override public Class<?> getSessionType() { //注意此处也必须为Activiti原生类 return UserIdentityManager.class; } @Override public Session openSession() { return customUserEntityManager; } @Autowired public void setCustomUserEntityManager(CustomUserEntityManager customUserEntityManager) { this.customUserEntityManager = customUserEntityManager; } }
2.CustomGroupEntityManagerFactory.java
这是自定义Group管理工厂,也就是我们权限中的角色类的管理了。
@Service
public class CustomGroupEntityManagerFactory implements SessionFactory{
@Resource
private CustomGroupEntityManager customGroupEntityManager;
public Class<?> getSessionType() {
// 返回原始的GroupManager类型
return GroupEntityManager.class;
}
public Session