您的位置:首页 > 其它

使用工作流接口对工作流的表进行查询

2017-06-17 13:57 288 查看

使用工作流接口对工作流的表进行查询

标签(空格分隔): activiti

代码如下:

package procdef;

import java.util.List;

import org.activiti.engine.ProcessEngine;

import org.activiti.engine.ProcessEngines;

import org.activiti.engine.repository.ProcessDefinition;

import org.junit.Test;

public class ProcessDefinitionTest {

/**
* 获取默认流程引擎实例,会自动读取activiti.cfg.xml文本
*/
private ProcessEngine processEngine=ProcessEngines.getDefaultProcessEngine();

/**
* 查询流程定义,返回流程定义集合,对应表
* act_re_procdef
*/
@Test
public void list(){
String processDefinitionKey="myFirstProcess";
List<ProcessDefinition> pdlist=processEngine.getRepositoryService() //获取service
.createProcessDefinitionQuery() //创建流程定义查询
.processDefinitionKey(processDefinitionKey)//通过key查询
.list();//返回一个集合

for(ProcessDefinition pd: pdlist){
System.out.println("ID_ "+pd.getId());
System.out.println("NAME_ "+pd.getName());
System.out.println("KEY_ "+pd.getKey());
System.out.println("VERSION_ "+pd.getVersion());
System.out.println("===========");
}
}


}

使用上述方法对流程的act_re_procdef表进行查询,结果和mysql workbench中显示一致,如下:

ID_ myFirstProcess:1:4

NAME_ My First process

KEY_ myFirstProcess

VERSION_ 1

ID_ myFirstProcess:2:2504

NAME_ My First process

KEY_ myFirstProcess

VERSION_ 2

ID_ myFirstProcess:3:10004

NAME_ My First process

KEY_ myFirstProcess

VERSION_ 3

ID_ myFirstProcess:4:12504

NAME_ My First process

KEY_ myFirstProcess

VERSION_ 4

此外也可以通过流程定义ID来查询某个流程定义,具体代码如下:

/**

* 通过id来查询某个流程定义

*/

@Test

public void getById(){

String processDefinitionId="myFirstProcess:4:12504";
ProcessDefinition pd=processEngine.getRepositoryService() //获取service
.createProcessDefinitionQuery() //创建流程定义查询
.processDefinitionId(processDefinitionId)//通过id查询
.singleResult();

System.out.println("ID_ "+pd.getId());
System.out.println("NAME_ "+pd.getName());
System.out.println("KEY_ "+pd.getKey());
System.out.println("VERSION_ "+pd.getVersion());
}


和之前的区别在于使用工作流接口的返回值不是list而是单个值。输出如下:

ID_ myFirstProcess:4:12504

NAME_ My First process

KEY_ myFirstProcess

VERSION_ 4

除了上面介绍的两个方法外,还有其他丰富的接口供我们调用,来进行数据库的查询操作(如排序,模糊查询等)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  activiti-工作流