学一个新技术一定少不了实现HelloWorld,我这里也不多解释了,注释解释的很清楚
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.repository.Deployment;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.junit.Test;
import java.util.List;
public class ActivityApplicationTests {
/**
* 获取默认流程引擎,会自动读取配置文件
*/
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
/**
* 部署流程定义
*/
@Test
public void deploy(){
// 获取部署相关Service
Deployment deployment = processEngine.getRepositoryService()
// 创建部署
.createDeployment()
// 加载资源文件
.addClasspathResource("HelloWorld.bpmn")
// 流程名称
.name("HelloWorld流程")
// 部署
.deploy();
System.err.println("流程部署ID:"+deployment.getId());
System.err.println("流程部署名称:"+deployment.getName());
System.err.println("流程部署:"+deployment);
}
/**
* 启动流程实例
*/
@Test
public void start(){
ProcessInstance process = processEngine.getRuntimeService()
.startProcessInstanceByKey("myProcess_1");
System.err.println("流程实例ID:"+process.getId());
System.err.println("流程定义ID:"+process.getProcessDefinitionId());
}
/**
* 查看任务
*/
@Test
public void findTask(){
//任务service
List<Task> taskList = processEngine.getTaskService()
// 创建任务查询
.createTaskQuery()
// 指定某个人
.taskAssignee("denghuolanshan")
.list();
for (Task task : taskList) {
System.err.println("任务ID:"+task.getId());
System.err.println("任务名称:"+task.getName());
System.err.println("任务创建时间:"+task.getCreateTime());
System.err.println("任务委派人:"+task.getAssignee());
System.err.println("任务流程实例ID:"+task.getProcessInstanceId());
}
}
/**
* 完成任务
*/
@Test
public void completeTask(){
processEngine.getTaskService()
.complete("27504");
}
}