Activity6.0工作流学习笔记(二)--API查询

Activit的API中提供了查询API供使用者查询表中的数据。它一共提供了两种查询的方法:查询API和原生查询
其实查询比较简单,就不多说了,下面贴出测试代码:
(本次测试使用act_id_group表作为测试表)

package com.cp;
import org.activiti.engine.IdentityService;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.identity.Group;
import java.util.List;
/**
 * 测试查询API
 * Created by 程程有小棉被啊 on 2019/7/18.
 */
public class TestQuery {

    public static void main(String[] args) {
        /*创建流程引擎*/
        ProcessEngine engine = ProcessEngines.getDefaultProcessEngine();
        //获取身份服务
        IdentityService identityService = engine.getIdentityService();

        //往 act_id_group 表中添加10条数据 方便测试用
        for (int i = 0; i < 10; i++) {
            //创建新的组 newGroup的参数默认字段为主键,但也可以在后续set主键。set后会覆盖参数设置的主键
            Group group = identityService.newGroup("group" + i);
            group.setName("name" + i);//设置name
            group.setType("type" + i);//设置type
            //group.setId("s");//设置主键,该设置会覆盖newGroup的主键。若不设置主键默认为newGroup的参数
            identityService.saveGroup(group);//将group保存到数据库中
        }

        //查询列表 默认查询
        List<Group> list = identityService.createGroupQuery().list();
        //分页查询列表 param1:起始索引 param2:查询总数
        List<Group> groups = identityService.createGroupQuery().listPage(2, 3);
        //查询列表 并按照GroupId升序排序
        List<Group> list1 = identityService.createGroupQuery().orderByGroupId().asc().list();
        //查询列表,并按照groupName 降序排序
        List<Group> list2 = identityService.createGroupQuery().orderByGroupName().desc().list();
        //查询列表,并按照groupName 升序,groupType降序排序   需要注意的是:多字段排序,必须依次排序
        List<Group> list3 = identityService.createGroupQuery().orderByGroupName().asc().orderByGroupType().desc().list();
        //按照名称为group1查询列表
        List<Group> group1 = identityService.createGroupQuery().groupName("group1").list();
        //按照名称为group1 查询单个对象
        Group group11 = identityService.createGroupQuery().groupName("group1").singleResult();
        //按照原生sql查询
        List<Group> list4 = identityService.createNativeGroupQuery().sql("select * from act_id_group where NAME_ = #{name}").parameter("name", "group3").list();
        engine.close();
    }

}

需要注意的是:

 List<Group> list3 = identityService.createGroupQuery().orderByGroupName().asc().orderByGroupType().desc().list();

多条件排序查询,必须这么写,如果只写一个asc或者desc,会覆盖掉前面的条件。

本次使用 IdentityService 作为事例进行测试,其他服务与该方法一样,参照即可~~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值