Activiti6.0整合SpringBoot2.0學(xué)習(xí)(一)

一、學(xué)習(xí)背景

近期因工作需要研究了一波Activiti工作流抑胎,流程中需要根據(jù)業(yè)務(wù)來推進流程的流轉(zhuǎn)储笑、多人處理任務(wù)、排他網(wǎng)關(guān)圆恤、定時邊界任務(wù)、撤回等功能腔稀。不多說盆昙,直接上正文。

二焊虏、從零開始

新建springboot項目并創(chuàng)建activiti6的28張表淡喜,這里不闡述28張表每個的含義,主要有ACT_HI_(歷史信息表)诵闭、ACT_RU_(運行時信息表)炼团、ACT_ID_(身份信息類)澎嚣、ACT_RE_(靜態(tài)資源類)。

配置文件:

@Configuration
public class ActivitiConfig {
    @Autowired
    private DataSource dataSource;
    @Autowired
    private ResourcePatternResolver resourceLoader;
    /**
    * 初始化配置瘟芝,將創(chuàng)建28張表
    * @return
    */
    @Bean
    public StandaloneProcessEngineConfiguration processEngineConfiguration() {
        StandaloneProcessEngineConfiguration configuration = new StandaloneProcessEngineConfiguration();
        configuration.setDataSource(dataSource);
        configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
        configuration.setAsyncExecutorActivate(false);
        return configuration;
    }
    @Bean
    public ProcessEngine processEngine() {
        return processEngineConfiguration().buildProcessEngine();
    }
    @Bean
    public RepositoryService repositoryService() {
        return processEngine().getRepositoryService();
    }
    @Bean
    public RuntimeService runtimeService() {
        return processEngine().getRuntimeService();
    }
    @Bean
    public TaskService taskService() {
        return processEngine().getTaskService();
    }
}

上文代碼中將activiti常用的幾個service注入到spring容器中易桃,方便在其他地方直接注入即可使用。

TestProcess.bpmn文件

User Task配置信息

三锌俱、ActivitiHelloWorld

寫一個controller晤郑,實現(xiàn)部署流程啟動流程贸宏、完成任務(wù)節(jié)點造寝,具體代碼如下:

@RestController
@RequestMapping("/activiti")
public class ActivitiController {
@Autowired
private RepositoryService repositoryService;
@Autowired
private RuntimeService runtimeService;
@Autowired
private TaskService taskService;
@RequestMapping("helloWorld") 
    public void helloWorld() { 
        //根據(jù)bpmn文件部署流程 
        Deployment deploy = repositoryService.createDeployment()
        .addClasspathResource("TestProcess.bpmn")
        .deploy(); 
        //獲取流程定義 
        ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().deploymentId(deploy.getId()).singleResult(); 
        //啟動流程定義,返回流程實例 
        ProcessInstance pi = runtimeService.startProcessInstanceById(processDefinition.getId()); 
        String processId = pi.getId(); 
        System.out.println("流程創(chuàng)建成功吭练,當(dāng)前流程實例ID:"+processId); 
        Task task=taskService.createTaskQuery().processInstanceId(processId).singleResult(); 
        System.out.println("執(zhí)行前诫龙,任務(wù)名稱:"+task.getName()); 
        taskService.complete(task.getId()); 
        task = taskService.createTaskQuery().processInstanceId(processId).singleResult(); 
        System.out.println("task為null,任務(wù)執(zhí)行完畢:"+task); 
    }
}

運行此程序鲫咽,瀏覽器訪問 http://localhost:8080/activiti/helloWorld
可以看到如下信息:

到這里签赃,一個activiti的demo已經(jīng)可以運行,接下來將陸續(xù)更新浑侥。姊舵。。

github地址:https://github.com/KevinZc007/acitviti6.0.git

初次寫文寓落,如有不當(dāng)括丁,請各位大佬指正,謝謝伶选。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末史飞,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子仰税,更是在濱河造成了極大的恐慌构资,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件陨簇,死亡現(xiàn)場離奇詭異吐绵,居然都是意外死亡,警方通過查閱死者的電腦和手機河绽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門己单,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人耙饰,你說我怎么就攤上這事纹笼。” “怎么了苟跪?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵廷痘,是天一觀的道長蔓涧。 經(jīng)常有香客問我,道長笋额,這世上最難降的妖魔是什么元暴? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮鳞陨,結(jié)果婚禮上昨寞,老公的妹妹穿的比我還像新娘。我一直安慰自己厦滤,他們只是感情好援岩,可當(dāng)我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著掏导,像睡著了一般享怀。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上趟咆,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天添瓷,我揣著相機與錄音,去河邊找鬼值纱。 笑死鳞贷,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的虐唠。 我是一名探鬼主播搀愧,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼疆偿!你這毒婦竟也來了咱筛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤杆故,失蹤者是張志新(化名)和其女友劉穎迅箩,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體处铛,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡饲趋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了撤蟆。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片篙贸。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖枫疆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情敷鸦,我是刑警寧澤息楔,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布寝贡,位于F島的核電站,受9級特大地震影響值依,放射性物質(zhì)發(fā)生泄漏圃泡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一愿险、第九天 我趴在偏房一處隱蔽的房頂上張望颇蜡。 院中可真熱鬧,春花似錦辆亏、人聲如沸风秤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缤弦。三九已至,卻和暖如春彻磁,著一層夾襖步出監(jiān)牢的瞬間碍沐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工衷蜓, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留累提,地道東北人。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓磁浇,卻偏偏與公主長得像斋陪,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子扯夭,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容