朋也的博客 » 首页 » 文章
作者:朋也
日期:2019-04-25
类别:activiti学习笔记
版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
activiti 自带了一套用户, 组, 以及用户与组的关系表, 共四张表
表 | 描述 |
---|---|
act_id_group | 组 |
act_id_user | 用户 |
act_id_info | 用户表的扩展 |
act_id_membership | 用户与组的关联表 |
这四张表都归 IdentityService
类管
@Autowired
private IdentityService identityService;
@Test
public void createGroup() {
Group group = identityService.newGroup("1");
group.setName("研发部");
Group group1 = identityService.newGroup("2");
group1.setName("运营部");
Group group2 = identityService.newGroup("3");
group2.setName("商务部");
identityService.saveGroup(group);
identityService.saveGroup(group1);
identityService.saveGroup(group2);
}
@Autowired
private IdentityService identityService;
@Test
public void createUser() {
User user = identityService.newUser("1");
user.setFirstName("三");
user.setLastName("张");
user.setEmail("zhangsan@aa.com");
User user1 = identityService.newUser("2");
user1.setFirstName("四");
user1.setLastName("李");
user1.setEmail("lisi@aa.com");
User user2 = identityService.newUser("3");
user2.setFirstName("五");
user2.setLastName("王");
user2.setEmail("wangwu@aa.com");
User user3 = identityService.newUser("4");
user3.setFirstName("六");
user3.setLastName("赵");
user3.setEmail("zhaoliu@aa.com");
identityService.saveUser(user);
identityService.saveUser(user1);
identityService.saveUser(user2);
identityService.saveUser(user3);
}
@Autowired
private IdentityService identityService;
@Test
public void createUser() {
// void createMembership(String userId, String groupId);
// 第一个参数是userId, 第二个参数是 groupId
identityService.createMembership("1", "1");
identityService.createMembership("2", "1");
identityService.createMembership("3", "2");
identityService.createMembership("4", "3");
}
原链接文:https://atjiu.github.io/2019/04/25/activiti-user-group-membership/
@Test
public void deleteTest() {
identityService.deleteUser("1");
identityService.deleteGroup("1");
}
查询用户
@Test
public void queryUser() {
List<User> users = identityService.createUserQuery().list();
for (User user : users) {
System.out.println("userName: " + user.getLastName() + user.getFirstName() + " email: " + user.getEmail());
}
}
查询组
@Test
public void queryGroup() {
List<Group> groups = identityService.createGroupQuery().list();
for (Group group : groups) {
System.out.println("id: " + group.getId() + " name: " + group.getName());
}
}
关联查询
@Test
public void queryMemberShip() {
// 查询id为1的组里关联的用户
List<User> users = identityService.createUserQuery().memberOfGroup("1").list();
for (User user : users) {
System.out.println("userName: " + user.getLastName() + user.getFirstName() + " email: " + user.getEmail());
}
System.out.println("======================================");
// 查询id为1的用户所在的组
List<Group> groups = identityService.createGroupQuery().groupMember("1").list();
for (Group group : groups) {
System.out.println("id: " + group.getId() + " name: " + group.getName());
}
}
有了这几张表, 可以把系统中的用户信息保存进去, 在进行流程的时候可以方便的通过 IdentityService
类来查询使用
貌似没有更新的操作, 尝试创建一个id已经存在的用户, 然后修改内容, 再保存它报错了, 不过删除用户后, 用户跟组的关联关系也一块删除了, 这样就方便了, 不用专门去维护关联表了
写博客不易,转载请保留原文链接,谢谢!