新聞中心
java activiti 工作流 都需要什么包?
常用的是:activiti-engine-5.91.jar,activiti-spring-5.9.jar;
創(chuàng)新互聯(lián)專注于泰和網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供泰和營銷型網(wǎng)站建設(shè),泰和網(wǎng)站制作、泰和網(wǎng)頁設(shè)計(jì)、泰和網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造泰和網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供泰和網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
解釋:以上兩個(gè)只是activiti工作流的常用包,通常會(huì)配置如spring開發(fā)的java包,還有數(shù)據(jù)庫jar包等進(jìn)行使用,但具體要用到什么包,這個(gè)和業(yè)務(wù)開發(fā)的邏輯有關(guān)系,也沒辦法進(jìn)行詳細(xì)說明的,所以只需要先下載常用的兩個(gè),其余的輔助包如:日志包、spring包、數(shù)據(jù)庫包、hibernate包、struts包、mybatis包等根據(jù)實(shí)際需要添加即可。
myeclips 如何畫工作流 java
有很多方法,舉例一種吧,用Image方式,用ImageIO類的read方法讀進(jìn)來,然后在窗口重載的paint()方法里面,用Graphics類的drawImage方法把它畫到窗口里。
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import javax.imageio.ImageIO;
public class Test1 extends Frame{
public void initComponents(){
setTitle("圖片測(cè)試");
setBounds(100, 100, 300, 200);
setVisible(true);
addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args) {
new Test1().initComponents();
}
public void paint(Graphics g){
try{
Image img1 =ImageIO.read(new File("c:/java.jpg"));
g.drawImage(img1, 50, 50, this);
}catch(Exception e){
e.printStackTrace();
}
}
工作流用java怎么實(shí)現(xiàn)代碼的編寫
工作流是業(yè)務(wù)流程的全部或部分自動(dòng)化,在此過程中,文檔、信息或任務(wù)按照一定的過程規(guī)則流轉(zhuǎn),實(shí)現(xiàn)組織成員間的協(xié)同工作,以達(dá)到業(yè)務(wù)的整體目標(biāo)。 工作流管理系統(tǒng)是支持企業(yè)經(jīng)營過程高效執(zhí)行并監(jiān)控其執(zhí)行過程的計(jì)算機(jī)軟件系統(tǒng)。 典型的WFMS至少...
java 工作流引擎有什么用
java 工作流引擎適用于多個(gè)行業(yè)領(lǐng)域及需求場(chǎng)景,利用低代碼開發(fā)平臺(tái)可高效提供需求建模、系統(tǒng)設(shè)計(jì)、開發(fā)部署、仿真測(cè)試、運(yùn)行維護(hù)和版本更新的軟件開發(fā)全生命周期支持!
還可快速構(gòu)建OA協(xié)同、公文督辦、KM文庫、項(xiàng)目管理、采購管理、生產(chǎn)管理、供應(yīng)鏈管理、營銷管理等一些列職能類和業(yè)務(wù)類管理系統(tǒng)并提供PC與移動(dòng)多應(yīng)用端入口。
提供BPM流程管控、數(shù)據(jù)跨平臺(tái)采集和報(bào)表展示、原系統(tǒng)流程補(bǔ)強(qiáng)、OA升級(jí)/替換、統(tǒng)一門戶、移動(dòng)辦公、多租戶SaaS應(yīng)用和智能硬件對(duì)接等解決方案。
java要實(shí)現(xiàn)工作流需要哪些框架???
Shark
Shark是體系和功能最為復(fù)雜的代表。它是另一款遵循WfMC的XPDL標(biāo)準(zhǔn)開源工作流引擎,并且同時(shí)遵循OMG組織的Workflow Management Facility規(guī)范。在所有開源工作流引擎中,Shark的體系最為完備和復(fù)雜。其一直秉承著“模塊化”的思想,所以比較容易擴(kuò)展。但是自從被Together公司收購后,Shark的商業(yè)化色彩已經(jīng)越來越濃,改稱為Together Workflow Server,并僅以Community Edition的形式提供了部分開源代碼供參考。
OSWorkflow
OSWorkflow是最輕量型的代表,也是一款非常靈活和低級(jí)別定位的工作流引擎的實(shí)現(xiàn)框架。低級(jí)別定位的意思是說,它不是定位在解決流程模型對(duì)象和運(yùn)轉(zhuǎn)場(chǎng)景,而是提供一套可維護(hù)調(diào)度的機(jī)制,供開發(fā)人員自主擴(kuò)展。這個(gè)維護(hù)流程調(diào)度機(jī)制OSWorkflow選擇的是基于行為(Action)的FSM理論,所以O(shè)SWorkflow更像是一個(gè)復(fù)雜而靈活的有限狀態(tài)調(diào)度機(jī)。
OSWorkflow在國內(nèi)項(xiàng)目應(yīng)用得較多,很多國內(nèi)的簡易審批流程項(xiàng)目都是基于其引擎二次開發(fā)而來。這主要是由于OSWorkflow是基于Action驅(qū)動(dòng)的,而國內(nèi)的客戶也很容易接受這樣的操作習(xí)慣。但OSWorkflow所依賴的FSM模型對(duì)于分支、聚合、子流程的支持度很低,這一點(diǎn)在實(shí)施過程中需要注意。
jBpm
jBpm是最適合擴(kuò)展的代表,是在所有開源引擎中最適宜被商業(yè)化應(yīng)用的一款。首先其流程建模模型是基于Activity Diagram(活動(dòng)圖)的,并在引擎構(gòu)建上融入了FSM和PetriNet思想,所以其內(nèi)核和根基比較牢固扎實(shí)。其次,自從被JBoss收購后,其3. x系列的結(jié)構(gòu)更加趨于微內(nèi)核,Plug-in思想也更加深入。其同時(shí)還提供了對(duì)BPEL擴(kuò)展,存儲(chǔ)支持JBoss Hibernate實(shí)現(xiàn),集成了JBoss seam,規(guī)則引擎準(zhǔn)備采用JBoss rules,并準(zhǔn)備集成JBoss Messaging。這樣,不論從內(nèi)核和外圍應(yīng)用,jBpm都具有了強(qiáng)勁的動(dòng)力。
另外,jBpm對(duì)Token的應(yīng)用也很有特色,巧妙地利用Parent-Child Token的機(jī)制處理分支、父子流程等復(fù)雜應(yīng)用場(chǎng)景。這個(gè)設(shè)計(jì)思想很值得大家學(xué)習(xí)參考。
YAWL
YAWL是算法和模式最值得研究的代表,它是Alast力主倡導(dǎo)的一款基于PetriNet建模的工作流引擎,其將PetriNet的Token與And、XOR、OR算法進(jìn)行了融合,并對(duì)Workflow Patterns(工作流模式)中所有模式提供支持。但YAWL本身僅是一個(gè)研究性項(xiàng)目,所以其結(jié)構(gòu)和實(shí)現(xiàn)缺少了商業(yè)化應(yīng)用的特點(diǎn)。但有必要研究一下YAWL,一方面可以加深對(duì)工作流模式的理解,另一方面,YAWL的一些建模思想、處理算法很值得推敲和吸納。
ActiveBPEL
ActiveBPEL 是BPEL引擎的代表,也是一款可執(zhí)行BPEL4WS規(guī)范的開源流程引擎,其結(jié)構(gòu)和實(shí)現(xiàn)方式具有很高的參考價(jià)值。目前國內(nèi)很多正在開發(fā)基于BPEL產(chǎn)品的中小型軟件廠商,其實(shí)現(xiàn)的很多基礎(chǔ)性內(nèi)容和思想都參考自ActiveBPEL。受目前國內(nèi)中小型客戶對(duì)流程需求的限制,基于BPEL的開源引擎或小型產(chǎn)品被市場(chǎng)接受度還很低。但BPEL所圍繞的業(yè)務(wù)流程及流程整合應(yīng)用是一個(gè)發(fā)展趨勢(shì)。
java shark工作流
下面是一個(gè)調(diào)試shark的例子,通過它,你可以大致了解shark的工作流程
運(yùn)行和測(cè)試
到${tws}\bin目錄下,首先運(yùn)行tns.bat,然后運(yùn)行run.bat,接著運(yùn)行runSA.bat,啟動(dòng)管理器,輸入用戶名admin,密碼是enhydra,OK,進(jìn)入管理器了。
下面是一個(gè)Quick Start,翻譯自Shark自帶的Quick Start,精簡了下,并修改了其中的幾處錯(cuò)誤:
到“Package management”,點(diǎn)“Load"按鈕,選擇"test-JavaScript.xpdl",然后點(diǎn)"Load"或者雙擊 "test-JavaScript.xpdl" 。等shark載入該包到內(nèi)存后,點(diǎn)"Exit"。
到 "Process instantiation management",從左邊樹形列表中選擇 "Package-test_js-Process definition-The Game"
這是一個(gè)猜數(shù)字的游戲,有兩個(gè)Player,系統(tǒng)開始生成一個(gè)隨機(jī)數(shù),然后Player可以輸入一個(gè)數(shù)字,如果誰輸入的數(shù)字更接近系統(tǒng)生成的隨機(jī)數(shù),他就的一份,游戲循環(huán)次數(shù)在游戲開始時(shí)輸入。
到 "User management" - "Users" ,點(diǎn)擊"New"按鈕。
創(chuàng)建兩個(gè)用戶,分別是test1和test2,密碼自己設(shè)置啦,這兩個(gè)用戶將用到游戲中
到"User management" - "Mapping" sub-section,點(diǎn)擊"Add"按鈕.
在左邊選擇"Player 1",右邊選擇"test1",點(diǎn)擊"Apply" 按鈕,然后點(diǎn)"Close"按鈕
同樣對(duì)test2做同樣的操作,不過得選擇"Play 2"
好了,準(zhǔn)備開始這個(gè)游戲了,轉(zhuǎn)到"Process instantiation management",選擇”The Game" process,然后點(diǎn)"Instantiate"按鈕。
系統(tǒng)提示是否update some process variables。選擇Yes,輸入3,這里的3就是游戲循環(huán)次數(shù)。
Disconnect當(dāng)前用戶,用test1登錄,到'Worklist management',刷新一下,就可以看到work list有內(nèi)容,點(diǎn)里面的"Accepted",然后點(diǎn)"Completed"按鈕,問你是否update process varibles,點(diǎn)Yes,輸入一個(gè)數(shù)字,這個(gè)就是Player自己輸入的數(shù)字,輸入后會(huì)跟系統(tǒng)生成的隨機(jī)數(shù)進(jìn)行比較的。
好,對(duì)test2進(jìn)行同樣操作,操作結(jié)束后會(huì)產(chǎn)生“View Score” work list,這個(gè)是Player的得分,點(diǎn)“Accepted”,然后點(diǎn)“Completed",再點(diǎn)Yes就可以看到得分,當(dāng)兩個(gè)Player都completed view score后,就會(huì)進(jìn)入新的循環(huán),直到達(dá)到循環(huán)次數(shù)
本文標(biāo)題:java工作流代碼 java中的工作流
URL標(biāo)題:http://fisionsoft.com.cn/article/hpeohc.html