`

jBPM4.4:查询 API

阅读更多
开发者需要编写企业特定查询时 当然也可以使用Hibenrate。但是对大多数用例来说, 查询API是不足够的。查询可以写成同ideas方式(? ),用于主要的jBPM概念:流程实例,任务,发布,历史流程,等等。

List<ProcessInstance> results = executionService.createProcessInstanceQuery()
                                       .processDefinitionId("my_process_definition")
                                       .notSuspended()
                                       .page(0, 50)
                                       .list();


这个例子返回指定流程定义的所有流程实例, 流程定义不是暂停的(? )。结果支持分页,第一页的前50条数据 会被我们获得。


查询任务也可以使用相同的方式完成:
List<Task> myTasks = taskService.createTaskQuery()
    .processInstanceId(piId)
    .assignee("John")
    .page(100, 120)
    .orderDesc(TaskQuery.PROPERTY_DUEDATE)
    .list();

这个查询会获得指定流程实例,分配给John的所有任务,也使用分页,对duedate进行逆序查询。



每个服务拥有操作这些统一查询的功能(比如,查询job通过 ManagementService ,查询完成的流程实例通过HistoryService 。 可以参考服务的javadoc了解这些查询API的所有细节。)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics