【正文】
。當(dāng)客戶與MySQL服務(wù)器連接時(shí),他們之間所有的口令傳送被加密,而且MySQL支持主機(jī)認(rèn)證。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。在2008年1月16號(hào)被Sun公司收購(gòu)。它由MySQL AB開(kāi)發(fā)、發(fā)布和支持。一個(gè)多層化應(yīng)用能夠?yàn)椴煌拿糠N服務(wù)提供一個(gè)獨(dú)立的層。它使得重用業(yè)務(wù)邏輯和界面邏輯非常困難。J2EE使用多層的分布式應(yīng)用模型,應(yīng)用邏輯按功能劃分為組件,各個(gè)應(yīng)用組件根據(jù)他們所在的層分布在不同的機(jī)器上。J2EE技術(shù)的基礎(chǔ)就是核心Java平臺(tái)或Java 2平臺(tái)的標(biāo)準(zhǔn)版,J2EE不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如編寫(xiě)一次、隨處運(yùn)行的特性、方便存取數(shù)據(jù)庫(kù)的JDBC 、API、CORBA技術(shù)以及能夠在Internet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)還提供了對(duì) EJB(Enterprise JavaBeans)、Java Servlet API、JSP(Java Server Pages)以及XML技術(shù)的全面支持。 J2EE技術(shù)介紹J2EE是一套全然不同于傳統(tǒng)應(yīng)用開(kāi)發(fā)的技術(shù)架構(gòu),包含許多組件,主要可簡(jiǎn)化且規(guī)范應(yīng)用系統(tǒng)的開(kāi)發(fā)與部署,進(jìn)而提高可移植性、安全性與再用價(jià)值。它的文檔說(shuō)明很全,而且各種應(yīng)用也說(shuō)得很詳細(xì),同時(shí)還有許多成熟的插件可供選擇。2006年由John Resig創(chuàng)建。 相關(guān)技術(shù)介紹 JQuery技術(shù)JQuery是一個(gè)快速的、簡(jiǎn)潔的javascript庫(kù)。在具體的流程管理、轉(zhuǎn)移方面使用JBoss JBPM這個(gè)比較優(yōu)秀的工作流引擎框架。本課件制作系統(tǒng)采用工作流技術(shù)。如果采用原始的工作方法,會(huì)使得各個(gè)部門(mén)的工作協(xié)調(diào)非常困難,效率極低。為資源制作方提供了一系列信息化的管理和服務(wù)。為了有效的提供學(xué)習(xí)資源,本系統(tǒng)就是基于這樣一個(gè)目標(biāo)而設(shè)計(jì)的。網(wǎng)絡(luò)遠(yuǎn)程教育是一種新型的教育形態(tài),是相對(duì)于傳統(tǒng)教育而言的,是一種非連續(xù)面授教育。s Distance Education Group, with simple operability, portability, flexibility and strong practicability.The system uses the MyEclipse development tools for system coding, using MySQL, MySQL jar package by loading to connect to the database. Achieve user management, system configuration management, workflow definitions, task initiation, task management and statistics, process handling, process control, errata processing and other functions.Key words:JBPM, MySQL, Workflow, MyEclipse目 錄第一章 引 言 1 引言 1 設(shè)計(jì)思想 1 相關(guān)技術(shù)介紹 1 工作流技術(shù)介紹 5第二章 項(xiàng)目介紹 8 項(xiàng)目背景 8 工作流技術(shù)的選擇 8 MVC設(shè)計(jì)架構(gòu) 9第三章 系統(tǒng)分析 12 可行性分析 12 系統(tǒng)需求分析 13 輸人輸出要求 16 數(shù)據(jù)管理能力要求 16第四章 概要設(shè)計(jì) 17 系統(tǒng)架構(gòu)設(shè)計(jì) 17 用例及描述 18 數(shù)據(jù)庫(kù)設(shè)計(jì) 21第五章 詳細(xì)設(shè)計(jì) 31 時(shí)序圖的設(shè)計(jì) 31 類(lèi)圖的設(shè)計(jì) 33第六章 系統(tǒng)實(shí)現(xiàn) 34 核心實(shí)現(xiàn)代碼 34 操作界面 39 安裝 43第七章 結(jié) 論 44參 考 文 獻(xiàn) 45致 謝 46聲 明 47第一章 引 言 引言隨著互聯(lián)網(wǎng)技術(shù)普及和發(fā)展,進(jìn)行教育和學(xué)習(xí)的方式也隨著發(fā)生了根本性的變化。關(guān)鍵詞:JBPM,MySQL,工作流,MyEclipseAbstractThe JBPM workflow system project is a management system for Recording of courseware management of a Beijing39。 本系統(tǒng)采用MyEclipse開(kāi)發(fā)工具進(jìn)行系統(tǒng)編碼,使用MySQL制作后臺(tái)數(shù)據(jù)庫(kù),通過(guò)加載MySQL 的Jar包來(lái)連接數(shù)據(jù)庫(kù)。其中以系統(tǒng)設(shè)置管理為基礎(chǔ)模塊,任務(wù)管理與統(tǒng)計(jì)和流程監(jiān)控為主要應(yīng)用模塊、勘誤處理為輔助模塊,實(shí)現(xiàn)了系統(tǒng)化地對(duì)課件錄制流程的管理、監(jiān)控、審核。從而給課件的錄制工作帶來(lái)更高的效率。畢 業(yè) 設(shè) 計(jì)(論 文)基于JBPM工作流課件錄制系統(tǒng)設(shè)計(jì)摘 要基于JBPM工作流課件錄制系統(tǒng)設(shè)計(jì)是針對(duì)某遠(yuǎn)程教育集團(tuán)課件錄制管理繁雜混亂所開(kāi)發(fā)的一款軟件。它能夠更加準(zhǔn)確、方便、快捷、高效、清晰、透明完成所需的課件錄制任務(wù)管理工作。 本系統(tǒng)主要分為用戶管理、系統(tǒng)設(shè)置管理、工作流程定義、任務(wù)發(fā)起、任務(wù)管理與統(tǒng)計(jì)、流程處理、流程監(jiān)控、勘誤處理等主要模塊。本系統(tǒng)完全滿足了北京某遠(yuǎn)程教育集團(tuán)的需求,具有簡(jiǎn)單的操作性、靈活的可移植性和較強(qiáng)的實(shí)用性。實(shí)現(xiàn)了用戶管理、系統(tǒng)設(shè)置管理、工作流程定義、任務(wù)發(fā)起、任務(wù)管理與統(tǒng)計(jì)、流程處理、流程監(jiān)控、勘誤處理等功能。s Distance Education Group that used to be more plicated and orderless. It can make courseware recording task management be more accurate, convenient, fast, efficient, clear and transparent to plete the necessary management. Recording of courseware management can be more efficiency.The system is mainly divided into the following major module: user management, system configuration management, workflow definitions, task initiation, task management and statistics, process handling, process control, monitoring and other major modules errata. The system configuration management is the basic module, besides the process monitoring, the task management and statistics is the main module, the errata handling is the assistant module. To achieve a systematic process of courseware record management, monitoring, auditing. The system is fully satisfied to the demands of a Beijing39。如今,網(wǎng)絡(luò)遠(yuǎn)程培訓(xùn)成為人們學(xué)習(xí)、“充電”的另一種方式。為了給學(xué)習(xí)者提供教育功能和豐富的網(wǎng)絡(luò)教育資源,向教育者和學(xué)習(xí)者提供一種方便網(wǎng)絡(luò)教和學(xué)的環(huán)境。本課件制作系統(tǒng)為課件制作方提供了一個(gè)學(xué)習(xí)資源的制作平臺(tái),通過(guò)此系統(tǒng)可以快速的制作課件并及時(shí)的發(fā)布。 設(shè)計(jì)思想由于課件的制作要涉及到多個(gè)部門(mén),其中有課件技術(shù)部、教學(xué)服務(wù)部、財(cái)務(wù)部、網(wǎng)站開(kāi)發(fā)部和技術(shù)開(kāi)發(fā)部。為了提高各個(gè)部門(mén)的工作效率,必須改變?cè)瓉?lái)的工作方法,采用面向信息化的技術(shù)手段。使業(yè)務(wù)活動(dòng)或任務(wù)達(dá)到一系列相互銜接、自動(dòng)進(jìn)行轉(zhuǎn)交給處理者。視圖采用了Struts框架,這個(gè)基于MVC模式的框架很好是將數(shù)據(jù)的展示和處理分離開(kāi)來(lái),在數(shù)據(jù)持久化方面,使用Java領(lǐng)域最好的一種面向?qū)ο缶幊痰臄?shù)據(jù)持久層解決方案—Hibernate。是一個(gè)輕量級(jí)的js庫(kù)(壓縮后只有21k),這是其它的js庫(kù)所不及的,它兼容CSS3,還兼容各種瀏覽器。JQuery能非常方便地處理HTML documents、events、實(shí)現(xiàn)動(dòng)畫(huà)效果,并且方便地為網(wǎng)站提供AJAX交互。JQuery能夠使用戶的HTML頁(yè)保持代碼和HTML內(nèi)容分離,也就是說(shuō),不用再在HTML里面插入一堆javascript來(lái)調(diào)用命令了,只需定義頁(yè)面元素的id即可。 J2EE是一種利用Java 2平臺(tái)來(lái)簡(jiǎn)化企業(yè)解決方案的開(kāi)發(fā)、部署和管理相關(guān)的復(fù)雜問(wèn)題的體系結(jié)構(gòu)。其最終目的就是成為一個(gè)能夠使企業(yè)開(kāi)發(fā)者大幅縮短投放市場(chǎng)時(shí)間的體系結(jié)構(gòu)。事實(shí)上,sun設(shè)計(jì)J2EE的初衷正是為了解決兩層模式(client/server)的弊端,在傳統(tǒng)模式中,客戶端擔(dān)當(dāng)了過(guò)多的角色而顯得臃腫,在這種模式中,第一次部署的時(shí)候比較容易,但難于升級(jí)或改進(jìn),可伸展性也不理想,而且經(jīng)?;谀撤N專(zhuān)有的協(xié)議。現(xiàn)在J2EE 的多層企業(yè)級(jí)應(yīng)用模型將兩層化模型中的不同層面切分成許多層。 MySQL數(shù)據(jù)庫(kù)介紹MySQL是一個(gè)備受歡迎的高性能、多用戶、多線程SQL數(shù)據(jù)庫(kù)服務(wù)器,它是一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的實(shí)現(xiàn),由一個(gè)服務(wù)器守護(hù)程序MySQL和多種不同的客戶程序及庫(kù)組成。MySQL AB是一家基于MySQL開(kāi)發(fā)人員的商業(yè)公司,它是一家使用了一種成功的商業(yè)模式結(jié)合開(kāi)源價(jià)值和方法論的第二代開(kāi)源公司,MySQL是MySQL AB的注冊(cè)商標(biāo)。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。MySQL有如下主要特征:(1) 多線程;(2) 開(kāi)放源代碼;(3) 多操作系統(tǒng)支持;(4) 性能高效穩(wěn)定;(5) 多用戶支持;(6) 應(yīng)用程序支持;(7) 支持事務(wù)處理、行鎖定、子查詢、外鍵和全文檢索等功能;(8) MySQL支持大型的數(shù)據(jù)庫(kù)處理,可以方便地支持上萬(wàn)條記錄的數(shù)據(jù)庫(kù);(9) MySQL有一個(gè)非常靈活而且安全的權(quán)限和口令系統(tǒng)。 Hibernate技術(shù)介紹Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。Hibernate功能強(qiáng)大,數(shù)據(jù)庫(kù)無(wú)關(guān)性好,O/R映射能力強(qiáng),如果你對(duì)Hibernate相當(dāng)精通,而且對(duì)Hibernate進(jìn)行了適當(dāng)?shù)姆庋b,那么你的項(xiàng)目整個(gè)持久層代碼會(huì)相當(dāng)簡(jiǎn)單,需要寫(xiě)的代碼很少,開(kāi)發(fā)速度很快。程序員往往只需定義好了POJO程序員甚至不需要對(duì)SQL的熟練掌握,Hibernate/OJB會(huì)根據(jù)制定的存儲(chǔ)邏輯,自動(dòng)生成對(duì)應(yīng)的SQL并調(diào)用JDBC接口加以執(zhí)行。它通過(guò)可擴(kuò)展標(biāo)記語(yǔ)言(XML)實(shí)現(xiàn)了類(lèi)和數(shù)據(jù)表之間的映射,使程序員在業(yè)務(wù)邏輯的開(kāi)發(fā)中面向數(shù)據(jù)庫(kù)而改為面向?qū)ο箝_(kāi)發(fā)。 JBPM工作流引擎技術(shù)介紹JBPM,全稱是Java Business Process Management,是一種基于J2EE的輕量級(jí)工作流管理系統(tǒng)。它還處于技術(shù)發(fā)展曲線(technology hype curve)上的初級(jí)階段。JPDL認(rèn)為一個(gè)商務(wù)流程可以被看作是一個(gè)UML狀態(tài)圖。JBPM的另一個(gè)特色是它使用Hibernate來(lái)管理它的數(shù)據(jù)庫(kù)。通過(guò)Hibernate,JBPM將數(shù)據(jù)的管理職能分離出去,自己專(zhuān)注于商務(wù)邏輯的處理。只要是Hibernate支持的數(shù)據(jù)庫(kù),JBPM就支持。(2) 使用JPDL定義工作流。 XML的DTD定義文件在JBPM下載包中。工作流,它以規(guī)格化的流程描述作為輸入的軟件組件,它維護(hù)流程的運(yùn)行狀態(tài),并在人和應(yīng)用之間分派活動(dòng)。它一些基本的術(shù)語(yǔ):流程定義(process definition):是業(yè)務(wù)流程或過(guò)程的規(guī)格化描述。流程上下文變量(process context variable):是與流程實(shí)例相關(guān)的變量。JPDL就是其中的一種。它使用圖形直觀的表示業(yè)務(wù)處理的流程,等待狀態(tài)可以是異步通信,時(shí)間調(diào)度,自動(dòng)操作等,或者將它們結(jié)合在一起使用,JPDL擁有強(qiáng)大的、可擴(kuò)展的工作流機(jī)制。工作流要解決的主要問(wèn)題是:為實(shí)現(xiàn)某個(gè)業(yè)務(wù)目標(biāo),在多個(gè)參與者之間,利用計(jì)算機(jī),按某種預(yù)定規(guī)則自動(dòng)傳遞文檔、信息或者任務(wù)。它應(yīng)用也非常廣泛,比如,在許多公司采用紙張表單,手工傳遞的方式,一級(jí)一級(jí)審批簽字,工作效率非常低下,對(duì)于統(tǒng)計(jì)報(bào)表功能則不能實(shí)現(xiàn)。工作流對(duì)于從事做計(jì)算機(jī)軟件設(shè)計(jì)的人而言,它是一項(xiàng)技術(shù)、為客戶提供解決方案框架的一部分;對(duì)于從事企業(yè)信息化管理的人而言,它是一種思想,是降低用戶的IT運(yùn)維成本的一種方法;對(duì)于從事軟件開(kāi)發(fā)的人而言,它是一個(gè)架構(gòu),是如何利用成熟穩(wěn)定的接口和組件低成本的開(kāi)發(fā)出適應(yīng)用戶流程變化的應(yīng)用程序。 工作流的分類(lèi)從技術(shù)角度工作流系統(tǒng)可以分為下面四個(gè)類(lèi)型:(1) 基于Domino的工作流管理系統(tǒng)Domino充其是一個(gè)可以編寫(xiě)帶有流程的應(yīng)用的編程和運(yùn)行環(huán)境,其本身并不具備一個(gè)工作流管理系統(tǒng)的特征,如圖形化的工作流定義、獨(dú)立的工作流引擎、清晰的工作流訪問(wèn)接口等。為了彌補(bǔ)Domino的不足,國(guó)內(nèi)一些OA廠商在Domino上添加了用其他語(yǔ)言編寫(xiě)的圖形化工作流定義組件,但這仍然不能叫做一個(gè)工作流管理系統(tǒng)。它通過(guò)MQSeries將不同的應(yīng)用集成在一起,并形成業(yè)務(wù)流程。當(dāng)進(jìn)行分布式的應(yīng)用系統(tǒng)的集成時(shí),它是一個(gè)不錯(cuò)的選擇。 (3) 基于微軟平臺(tái)的工作流管理系統(tǒng)這方面的典型代表是Ultimus和微軟公司在BizTalk中提供的工作流組件,它們?yōu)榛谖④浧脚_(tái)的工作流應(yīng)用提供支撐。 (4) 基于J2EE的工作流管理系統(tǒng)這類(lèi)系統(tǒng)是我們本文討論的重點(diǎn)。這種工作流系統(tǒng)