

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 本科畢業(yè)論文</b></p><p> 基于B/S架構(gòu)的工作流辦公系統(tǒng)的開(kāi)發(fā)</p><p> DEVELOPMENT OF WORKFLOW OFFICE AUTOMATION SYSTEM BASED ON B/S STRUCTURE</p><p> 專 業(yè) 名 稱 軟件工程
2、 </p><p> 申請(qǐng)學(xué)士學(xué)位所屬學(xué)科 </p><p> 指導(dǎo)教師姓名、職稱 </p><p> 2011 年5 月 10日</p><p><b> 摘 要</b></p>&l
3、t;p> 近年來(lái),隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,辦公自動(dòng)化系統(tǒng)已經(jīng)被越來(lái)越多的公司投入到實(shí)際應(yīng)用中。工作流技術(shù)的逐步完善,使得人們?nèi)粘^k公的效率得到了極大地提升。</p><p> 辦公自動(dòng)化系統(tǒng)本身是一個(gè)集眾多功能于一體的系統(tǒng),要完成一個(gè)真正可以投入使用的辦公自動(dòng)化系統(tǒng),還需要到實(shí)踐中尋找需求,進(jìn)行進(jìn)一步的完善。本文主要是通過(guò)建立一個(gè)工作流辦公系統(tǒng),來(lái)探討工作流技術(shù)應(yīng)用在辦公自動(dòng)化系統(tǒng)中的優(yōu)勢(shì)。本系統(tǒng)涉及
4、三類用戶分別是普通用戶、管理員和領(lǐng)導(dǎo),共同控制系統(tǒng)的活動(dòng)。</p><p> 本論文首先分析工作流技術(shù)優(yōu)勢(shì),然后闡述如何運(yùn)用Jsp技術(shù)實(shí)現(xiàn)基于B/S架構(gòu)的工作流辦公系統(tǒng),同時(shí)闡述jBPM、eclipse等開(kāi)源工具在Web框架下的應(yīng)用。</p><p> 關(guān)鍵詞:工作流,辦公自動(dòng)化,jBPM,Jsp,web</p><p><b> ABSTRACT&
5、lt;/b></p><p> In recent years,with the rapid development of the computer technology,office automation system has been put into pratical user by more and more companies. The Workflow technique has been i
6、mproving step by step.It makes daily office efficiency increased greatly.</p><p> Workflow office automation system itself is a great system which owes a lot of functions. The completion of an office automa
7、tion system which can be put into use needs find out the demand in practice for further improvement .This paper mainly discusses the advantage of workflow technology used in office automation system by establishing an w
8、orkflow office automation system. This system involves three categories of users.They are users, managers and supermanagers. They control system activity in</p><p> This paper firstly analizes the advantage
9、 of the workflow office automation system, and then states how to used jsp technologies to develop system of workflow office automation on the basis of the B/S frame. At the same time, it introduces the application of jB
10、PM and Eclipse, the open source frame in a web frame system.</p><p> Key words: Workflow, Office Automation, Jsp, web, B/S</p><p><b> 目 錄</b></p><p><b> 1 引言1&
11、lt;/b></p><p> 2 工作流辦公系統(tǒng)的分析2</p><p> 2.1 系統(tǒng)背景2</p><p> 2.2 系統(tǒng)開(kāi)發(fā)的意義2</p><p> 2.3 系統(tǒng)簡(jiǎn)介2</p><p> 2.4 可行性分析3</p><p> 2.4.1 技術(shù)可行性3&l
12、t;/p><p> 2.4.2 經(jīng)濟(jì)可行性3</p><p> 2.4.3 法律可行性3</p><p> 3 開(kāi)發(fā)工具與相關(guān)技術(shù)簡(jiǎn)介3</p><p> 3.1 相關(guān)技術(shù)介紹4</p><p> 3.1.1 jBPM概述4</p><p> 3.1.2 JSP簡(jiǎn)介4<
13、/p><p> 3.1.3 Web服務(wù)5</p><p> 3.1.4 MVC開(kāi)發(fā)模式5</p><p> 3.2 開(kāi)發(fā)工具7</p><p><b> 3.3 數(shù)據(jù)庫(kù)7</b></p><p> 3.4 系統(tǒng)平臺(tái)7</p><p> 3.4.1 系統(tǒng)模式
14、8</p><p> 3.4.2 硬件環(huán)境8</p><p> 3.4.3 軟件環(huán)境8</p><p> 4 工作流辦公系統(tǒng)的總體設(shè)計(jì)8</p><p> 4.1 系統(tǒng)業(yè)務(wù)流程圖8</p><p> 4.2 總體設(shè)計(jì)的目標(biāo)和思路9</p><p> 4.3 系統(tǒng)構(gòu)架9&
15、lt;/p><p> 4.4 數(shù)據(jù)庫(kù)設(shè)計(jì)10</p><p> 4.4.1 數(shù)據(jù)庫(kù)的概要設(shè)計(jì)10</p><p> 4.4.2 數(shù)據(jù)庫(kù)的概念設(shè)計(jì)11</p><p> 5 工作流辦公系統(tǒng)的具體實(shí)現(xiàn)13</p><p> 5.1 系統(tǒng)開(kāi)發(fā)環(huán)境配置13</p><p> 5.2 系
16、統(tǒng)各模塊具體實(shí)現(xiàn)14</p><p> 5.2.1 數(shù)據(jù)庫(kù)連接模塊14</p><p> 5.2.2 登錄模塊15</p><p> 5.2.3 普通用戶模塊17</p><p> 5.2.4 管理員模塊21</p><p> 5.2.5 領(lǐng)導(dǎo)模塊23</p><p>&l
17、t;b> 結(jié)束語(yǔ)25</b></p><p><b> 參考文獻(xiàn)26</b></p><p><b> 致謝27</b></p><p><b> INDEX</b></p><p> 1 Introduction1</p>&
18、lt;p> 2 Analysis of Workflow Office Automation System2</p><p> 2.1 System Background2</p><p> 2.2 The Significance of System Development2</p><p> 2.3 System Introduction2
19、</p><p> 2.4 Feasibility Analysis3</p><p> 2.4.1 Technical Feasibility3</p><p> 2.4.2 Economic Feasibility3</p><p> 2.4.3 Legal Feasibility3</p><p>
20、; 3 Introduction of Development Tools and Related Technology3</p><p> 3.1 Introduction of Related Technology3</p><p> 3.1.1 jBPM OverView3</p><p> 3.1.2 JSP Introduction4<
21、;/p><p> 3.1.3 Web Services5</p><p> 3.1.4 MVC Development Mode5</p><p> 3.2 Development Tools7</p><p> 3.3 Database7</p><p> 3.4 System Plantform7&
22、lt;/p><p> 3.4.1 System Mode7</p><p> 3.4.2 Hardware Environment7</p><p> 3.4.3 Software Environment8</p><p> 4 Overall Design of Workflow Office Automation System
23、8</p><p> 4.1 System Business Flow Chart8</p><p> 4.2 The Overall Design Goal and Ideas8</p><p> 4.3 System Structure9</p><p> 4.4 Database Design9</p>&
24、lt;p> 4.4.1 Summary Design of Database9</p><p> 4.4.2 Concept Design of Database10</p><p> 5 Workflow Office Automation System to Achieve the Specific12</p><p> 5.1 Config
25、uration fo System Development Environment12</p><p> 5.2 Implement of Every Module13</p><p> 5.2.1 Database Connection Module13</p><p> 5.2.2 Login Module14</p><p&g
26、t; 5.2.3 User Module16</p><p> 5.2.4 Manager Module20</p><p> 5.2.5 Supermanager Module22</p><p><b> Tag24</b></p><p> References25</p><
27、;p><b> Thanks26</b></p><p><b> 1 引言</b></p><p> 在早期沒(méi)有引入計(jì)算機(jī)系統(tǒng)時(shí),生產(chǎn)領(lǐng)域和辦公自動(dòng)化領(lǐng)域的許多工作都是人工完成的。那個(gè)時(shí)期各個(gè)業(yè)務(wù)活動(dòng)之間通過(guò)紙張傳遞信息。隨著計(jì)算機(jī)技術(shù)的發(fā)展和進(jìn)步,人們開(kāi)始使用計(jì)算機(jī)技術(shù)構(gòu)建一個(gè)無(wú)紙化工作環(huán)境,并在其上開(kāi)展日常的業(yè)務(wù)活動(dòng)。此外,一
28、些企事業(yè)單位開(kāi)始構(gòu)建自己專用的信息傳遞和處理系統(tǒng),以實(shí)現(xiàn)日常信息處理的電子化和自動(dòng)化。在對(duì)工作流技術(shù)的逐步研究和計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的蓬勃發(fā)展的環(huán)境下,工作流技術(shù)得到了良好的基礎(chǔ)設(shè)施,進(jìn)而促進(jìn)了工作流技術(shù)的發(fā)展和運(yùn)用。許多公司開(kāi)發(fā)了自己的工作流管理系統(tǒng)以適應(yīng)市場(chǎng)上的需求。國(guó)際市場(chǎng)競(jìng)爭(zhēng)日益激烈,國(guó)際之間企業(yè)貿(mào)易日益增加,企業(yè)走向國(guó)際化,要求企業(yè)對(duì)業(yè)務(wù)流程能夠快速地進(jìn)行重組;市場(chǎng)趨向多元化,要求企業(yè)信息系統(tǒng)能夠適應(yīng)市場(chǎng)變化;企業(yè)之間的競(jìng)爭(zhēng)要求提高
29、辦公效率和生產(chǎn)效率;同時(shí),面向市場(chǎng)和客戶的業(yè)務(wù)拓展,要求企業(yè)采用過(guò)程管理和過(guò)程集成方法提高其管理水平和服務(wù)質(zhì)量。近年來(lái),隨著企業(yè)規(guī)模的擴(kuò)大,企業(yè)內(nèi)部信息系統(tǒng)規(guī)模變得越來(lái)越龐大,企業(yè)之間的聯(lián)系也越來(lái)越緊密,企業(yè)內(nèi)部和外部業(yè)務(wù)流程趨向于集中統(tǒng)一。Web服務(wù)系列標(biāo)準(zhǔn)的發(fā)展與成熟,為企業(yè)分布式應(yīng)用提供了基礎(chǔ)的技術(shù)支持。通過(guò)工作流技術(shù)整合</p><p> 2 工作流辦公系統(tǒng)的分析</p><p>
30、;<b> 2.1 系統(tǒng)背景</b></p><p> 隨著計(jì)算機(jī)技術(shù)的發(fā)展,在辦公自動(dòng)化建設(shè)的帶動(dòng)下,為解決組織機(jī)構(gòu)地理位置不集中的情況,提高整個(gè)企事業(yè)單位的辦公效率,結(jié)合泰山學(xué)院的實(shí)際辦公情況,開(kāi)發(fā)出泰山學(xué)院工作流辦公系統(tǒng)。該工作流辦公系統(tǒng)在運(yùn)用工作流技術(shù)的基礎(chǔ)上,結(jié)合以往辦公自動(dòng)化系統(tǒng)的業(yè)務(wù)功能,實(shí)現(xiàn)辦公自動(dòng)化處理的系統(tǒng)。由于信息技術(shù)的發(fā)展和日趨激烈的商業(yè)競(jìng)爭(zhēng),人們不再滿足于獨(dú)立、
31、零散的辦公自動(dòng)化和計(jì)算機(jī)應(yīng)用,而是需要綜合的、集成化的解決方案。單獨(dú)的辦公自動(dòng)化系統(tǒng)不能很好地解決。</p><p> 2.2 系統(tǒng)開(kāi)發(fā)的意義</p><p> 目前市場(chǎng)上有很多工作流系統(tǒng)和辦公自動(dòng)化系統(tǒng)。但是,能將兩者結(jié)合在一起的系統(tǒng)不多,本系統(tǒng)目的在于探索開(kāi)發(fā)出一個(gè)工作流辦公系統(tǒng),要求不僅能夠?qū)崿F(xiàn)辦公自動(dòng)化系統(tǒng)的功能,還能結(jié)合工作流系統(tǒng)的優(yōu)勢(shì)。辦公自動(dòng)化系統(tǒng)采用Internet/I
32、ntranet技術(shù),基于工作流的概念,使企業(yè)內(nèi)部人員方便快捷地共享信息,高效地協(xié)同工作;改變過(guò)去復(fù)雜、低效的手工辦公方式,實(shí)現(xiàn)迅速、全方位的信息采集、信息處理,為企業(yè)的管理和決策提供科學(xué)的依據(jù),深受眾多企業(yè)的青睞。使用工作流技術(shù)可以對(duì)常規(guī)性事務(wù)進(jìn)行管理,改進(jìn)和優(yōu)化業(yè)務(wù)流程,提高業(yè)務(wù)工作效率;實(shí)現(xiàn)更好的業(yè)務(wù)過(guò)程控制,提高顧客服務(wù)質(zhì)量;提高業(yè)務(wù)流程的柔性等。</p><p><b> 2.3 系統(tǒng)簡(jiǎn)介&l
33、t;/b></p><p> 本系統(tǒng)(泰山學(xué)院工作流辦公系統(tǒng))是運(yùn)用jBPM工作流引擎,基于Web服務(wù)、jsp技術(shù)等Web開(kāi)發(fā)技術(shù),采用MVC開(kāi)發(fā)模式,基于網(wǎng)絡(luò)B/S架構(gòu)設(shè)計(jì)的WEB應(yīng)用系統(tǒng)。它要求建成以Web服務(wù)為基礎(chǔ)模塊,結(jié)合Web設(shè)計(jì)的優(yōu)秀模式,利用jsp技術(shù)開(kāi)發(fā)出的一個(gè)工作流辦公系統(tǒng)。它總夠有6大功能模塊,即流程管理、人事管理、日程管理、考勤管理、消息管理和系統(tǒng)管理。</p><
34、;p><b> 2.4 可行性分析</b></p><p> 本系統(tǒng)屬于辦公自動(dòng)化系統(tǒng)的一種,基于以前已有諸多的辦公自動(dòng)化系統(tǒng),又結(jié)合工作流管理系統(tǒng)的特點(diǎn)。在技術(shù)難度方面,由于對(duì)工作流管理系統(tǒng)接觸不多,在指導(dǎo)老師的指導(dǎo)和相關(guān)參考文獻(xiàn)下,不斷探索工作流辦公系統(tǒng)的實(shí)現(xiàn)。</p><p> 2.4.1 技術(shù)可行性</p><p> 該系
35、統(tǒng)采用的主要技術(shù)包括jBPM、jsp和Web服務(wù)等。其中,jsp是當(dāng)今比較流行的web開(kāi)發(fā)技術(shù),在近幾年的時(shí)間中這些技術(shù)已近非常的成熟。jBPM作為本系統(tǒng)的工作流引擎,負(fù)責(zé)整個(gè)業(yè)務(wù)流程的控制和業(yè)務(wù)數(shù)據(jù)的交互。通過(guò)Web服務(wù),可以在Web層面之間提供一些服務(wù)接口,供外部應(yīng)用程序訪問(wèn)。</p><p> 2.4.2 經(jīng)濟(jì)可行性</p><p> 該系統(tǒng)采用的技術(shù)都是開(kāi)源技術(shù),開(kāi)發(fā)環(huán)境也是開(kāi)
36、源免費(fèi)的。系統(tǒng)采用的數(shù)據(jù)庫(kù)是SQLServer 2000個(gè)人版,它是一個(gè)免費(fèi)的數(shù)據(jù)庫(kù)。因此系統(tǒng)所使用的軟件都是免費(fèi)的,極大地節(jié)省了投資成本。</p><p> 2.4.3 法律可行性</p><p> 該系統(tǒng)的開(kāi)發(fā)過(guò)程中沒(méi)有涉及到使用付費(fèi)的第三方軟件,且系統(tǒng)所擁有的功能沒(méi)有涉及到侵犯使用者的隱私,沒(méi)有違反國(guó)家的關(guān)于網(wǎng)絡(luò)的相關(guān)法律。所以系統(tǒng)在法律上可行。</p><p
37、> 3 開(kāi)發(fā)工具與相關(guān)技術(shù)簡(jiǎn)介</p><p> 3.1 相關(guān)技術(shù)介紹</p><p> 3.1.1 jBPM概述</p><p> JBoss jBPM是一個(gè)靈活的語(yǔ)言流程語(yǔ)言框架,其中jPDL(jBPM Process Definition Language,jBPM流程定義語(yǔ)言)就是建立在該框架之上的一種流程定義語(yǔ)言。jPDL使用一種直觀的流程定
38、義語(yǔ)言來(lái)描述企業(yè)業(yè)務(wù)流程中的任務(wù)、活動(dòng)、定時(shí)器等操作,然后把這些操作通過(guò)變遷和狀態(tài)機(jī)制綁定在一起,實(shí)現(xiàn)了一個(gè)強(qiáng)大的、易擴(kuò)展的流程控制機(jī)制。</p><p> 和其他的開(kāi)源工作流管理系統(tǒng)相比,JBoss jBPM使用了完整的產(chǎn)品實(shí)現(xiàn):工作流引擎、建模工具、客戶端和流程控制臺(tái),并且能夠使用Web Service和其他工作流產(chǎn)品交互。盡管JBoss jBPM是一個(gè)完整的產(chǎn)品實(shí)現(xiàn),但是它完全可以作為一個(gè)簡(jiǎn)單的Java庫(kù)
39、使用,也可以作為一個(gè)企業(yè)級(jí)應(yīng)用直接部署。當(dāng)然,在實(shí)際的軟件開(kāi)發(fā)中,我們應(yīng)該按需選擇,采用合適的方式使用JBoss jBPM。</p><p> 在JBoss jBPM中,核心的工作流管理功能集成在一個(gè)Java庫(kù)中。這個(gè)Java庫(kù)包括流程的管理、執(zhí)行和數(shù)據(jù)庫(kù)服務(wù)等功能。</p><p> 3.1.2 JSP簡(jiǎn)介</p><p> JSP技術(shù)使用Java編程語(yǔ)言
40、編寫(xiě)類XML的tags和script lets,來(lái)封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁(yè)的處理邏輯。網(wǎng)頁(yè)還能通過(guò)tags和script lets訪問(wèn)存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁(yè)邏輯與網(wǎng)頁(yè)設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開(kāi)發(fā)變得迅速和容易。</p><p> Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入
41、的Java程序段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁(yè)所需要的功能。</p><p> JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端的就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。</p><p> JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返
42、回給客戶端的瀏覽器。Java Servlet 是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開(kāi)發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。</p><p> 自JSP推出后,眾多大公司都支持JSP技術(shù)的服務(wù)器,如IBM、Oracle、Bea公司等,所以JSP迅速成為商業(yè)應(yīng)用的服務(wù)器端語(yǔ)言。</p
43、><p> 3.1.3 Web服務(wù)</p><p> Web Service是一種輕量級(jí)的、獨(dú)立的通信技術(shù),它可以接收并響應(yīng)從Intranet上的其它系統(tǒng)傳遞過(guò)來(lái)的請(qǐng)求。例如,在Windows系統(tǒng)中,應(yīng)用程序是通過(guò)API使用系統(tǒng)提供的服務(wù),而在Web服務(wù)站點(diǎn)之間,如果想使用其它站點(diǎn)中的資源,就可以使用Web服務(wù)技術(shù)。</p><p> Web Service也叫做
44、XML Web Service WebService。從字面意義上理解,它就是一個(gè)運(yùn)行在Web上的服務(wù)。這個(gè)服務(wù)存在于遠(yuǎn)程網(wǎng)絡(luò)中,它可以為向它請(qǐng)求的程序提供一些特定的功能,例如計(jì)算、查詢、返回?cái)?shù)據(jù)等。 Web Service就好像是一個(gè)遠(yuǎn)程的服務(wù)提供者,只要需要服務(wù)的人按照一定的規(guī)范請(qǐng)求,它就可以提供服務(wù)。</p><p> 從使用者的角度看來(lái)Web Service,就當(dāng)相一個(gè)應(yīng)用程序的訪問(wèn)界面。它是通過(guò)Web
45、方式請(qǐng)求調(diào)用的。從更深層次看來(lái),它是Web應(yīng)用程序的一種分支,是一種分布式技術(shù)。在調(diào)用它的時(shí)候,就和使用普通函數(shù)沒(méi)有多大差別,就好像一種分布式的網(wǎng)絡(luò)模塊化組件。</p><p> Web Service是建立可交互操作的、跨平臺(tái)的、分布式應(yīng)用程序的新平臺(tái)。它的訪問(wèn)的機(jī)制是基于XML的消息形式的,而使Web客戶端與Web Service之間除了請(qǐng)求和響應(yīng)外,兩者之間不需要清楚對(duì)方的其它任何情況。另外它是以一種最簡(jiǎn)
46、單的方式來(lái)實(shí)現(xiàn)異構(gòu)系統(tǒng)之間的互通信和數(shù)據(jù)交換,可跨平臺(tái)。</p><p> 3.1.4 MVC開(kāi)發(fā)模式</p><p> MVC架構(gòu)是"Model-View-Controller"的縮寫(xiě),中文翻譯為"模型-視圖-控制器"。MVC應(yīng)用程序總是由這三個(gè)部分組成。Event(事件)導(dǎo)致Controller改變Model或View,或者同時(shí)改變兩者。只要
47、Controller改變了Models的數(shù)據(jù)或者屬性,所有依賴的View都會(huì)自動(dòng)更新。類似的,只要Controller改變了View,View會(huì)從潛在的Model中獲取數(shù)據(jù)來(lái)刷新自己。</p><p> MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層——模型層、視圖層、控制層。<
48、;/p><p> 視圖(View)代表用戶交互界面,對(duì)于Web應(yīng)用來(lái)說(shuō),可以概括為HTML界面,但有可能為XHTML、XML和Applet。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個(gè)應(yīng)用可能有很多不同的視圖,MVC設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型(Model)處理。</p><p>
49、 模型(Model):就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過(guò)程對(duì)其它層來(lái)說(shuō)是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說(shuō)是MVC最主要的核心。MVC設(shè)計(jì)模式告訴我們,把應(yīng)用的模型按一定的規(guī)則抽取出來(lái),抽取的層次很重要,這也是判斷開(kāi)發(fā)人員是否優(yōu)秀的設(shè)計(jì)依據(jù)。抽象與具體不能隔得太遠(yuǎn),也不能太近。MVC并沒(méi)有提供模型的設(shè)計(jì)方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。
50、我們可以用對(duì)象編程來(lái)做比喻,MVC定義了一個(gè)頂級(jí)類,告訴它的子類你只能做這些,但沒(méi)法限制你能做這些。這點(diǎn)對(duì)編程的開(kāi)發(fā)人員非常重要。業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對(duì)象的數(shù)據(jù)保存(持續(xù)化)。</p><p> 控制(Controller)可以理解為從用戶接收請(qǐng)求, 將模型與視圖匹配在一起,共同完成用戶的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個(gè)分發(fā)器,選擇什么樣的模型
51、,選擇什么樣的視圖,可以完成什么樣的用戶請(qǐng)求??刂茖硬⒉蛔鋈魏蔚臄?shù)據(jù)處理。一個(gè)模型可能對(duì)應(yīng)多個(gè)視圖,一個(gè)視圖可能對(duì)應(yīng)多個(gè)模型。模型、視圖與控制器的分離,使得一個(gè)模型可以具有多個(gè)顯示視圖。如果用戶通過(guò)某個(gè)視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。因此,無(wú)論何時(shí)發(fā)生了何種數(shù)據(jù)變化,控制器都會(huì)將變化通知所有的視圖,導(dǎo)致顯示的更新。這實(shí)際上是一種模型的變化-傳播機(jī)制。模型、視圖、控制器三者之間的關(guān)系和各自的主
52、要功能。</p><p><b> 3.2 開(kāi)發(fā)工具</b></p><p> 本系統(tǒng)選用:jdk 1.6+JBPM 3.2.3+Apache Tomcat 5.5.27+Eclipse 3.4.1+Web插件+SQLServer 2000。</p><p><b> 3.3 數(shù)據(jù)庫(kù)</b></p>&
53、lt;p> 數(shù)據(jù)庫(kù)作為一個(gè)系統(tǒng)的存儲(chǔ)工具,它的執(zhí)行效率直接關(guān)系到整個(gè)系統(tǒng)執(zhí)行效率,是系統(tǒng)數(shù)據(jù)進(jìn)行持久化常用的工具。它是信息管理系統(tǒng)的核心組成部分,所有信息處理系統(tǒng)都將基于某種數(shù)據(jù)庫(kù)平臺(tái),以便將其處理的信息資源完整、安全地保存起來(lái),并且對(duì)其進(jìn)行各種管理和利用。</p><p> 選擇一個(gè)數(shù)據(jù)庫(kù)平臺(tái)是非常重要的。根據(jù)工作流辦公系統(tǒng)應(yīng)用的實(shí)際需要,在選擇數(shù)據(jù)庫(kù)平臺(tái)時(shí),應(yīng)考慮下列因素:</p>&
54、lt;p> ?。?)性能:數(shù)據(jù)庫(kù)的數(shù)據(jù)處理能力</p><p> ?。?)開(kāi)放性:數(shù)據(jù)庫(kù)是否能在多種操作系統(tǒng)下使用。</p><p> ?。?)安全性:數(shù)據(jù)庫(kù)是否具有高度的安全性。</p><p> ?。?)可靠性:數(shù)據(jù)庫(kù)是否具有高度的可靠性。</p><p> ?。?)并行性:數(shù)據(jù)庫(kù)是否并行運(yùn)行在多節(jié)點(diǎn)上。</p>&l
55、t;p> ?。?)可操作性:數(shù)據(jù)庫(kù)在使用前是否需要復(fù)雜的培訓(xùn)。</p><p> 該系統(tǒng)的數(shù)據(jù)庫(kù)平臺(tái)選用的是Microsoft 公司的SQL Server 2000。SQL Server 2000擁有大型數(shù)據(jù)庫(kù)系統(tǒng)基本特征,但保持了windows環(huán)境下界面友好,操作簡(jiǎn)單的優(yōu)點(diǎn),成為windows環(huán)境下開(kāi)發(fā)中、小型B/S系統(tǒng)較流行的數(shù)據(jù)庫(kù)系統(tǒng)。</p><p><b>
56、3.4 系統(tǒng)平臺(tái)</b></p><p> 3.4.1 系統(tǒng)模式</p><p> 本系統(tǒng)主體采用MVC模式作為開(kāi)發(fā)模式,底層又運(yùn)用Web服務(wù)的相關(guān)技術(shù)。</p><p> 3.4.2 硬件環(huán)境</p><p> 服務(wù)器端:高性能的計(jì)算機(jī)一臺(tái),普通的雙絞線作為連接。</p><p> 客戶端:普通
57、的計(jì)算機(jī)或者工作站,普通的雙絞線作為連接。</p><p> 3.4.3 軟件環(huán)境</p><p> 服務(wù)器端:Apache Tomcat 5.5.27。</p><p> 客戶端:安裝IE等瀏覽器,安裝windows XP系統(tǒng)。</p><p> 4 工作流辦公系統(tǒng)的總體設(shè)計(jì)</p><p> 4.1 系統(tǒng)
58、業(yè)務(wù)流程圖</p><p> 本系統(tǒng)構(gòu)的業(yè)務(wù)構(gòu)架圖如圖4-1所示。</p><p><b> 圖4-1 業(yè)務(wù)框架</b></p><p> 4.2 總體設(shè)計(jì)的目標(biāo)和思路</p><p> 本系統(tǒng)目的在于設(shè)計(jì)一個(gè)基于Web服務(wù)的工作流辦公系統(tǒng)。要求系統(tǒng)是一個(gè)數(shù)據(jù)安全、穩(wěn)定性強(qiáng)、功能清晰的數(shù)據(jù)管理系統(tǒng)。系統(tǒng)實(shí)現(xiàn)的功能
59、主要是圍繞在管理過(guò)程中所發(fā)生數(shù)據(jù)流動(dòng),主要有工作流程的數(shù)據(jù)交互,考勤記錄和發(fā)送消息等。它共有大6功能模塊,即流程管理、日程管理、考勤管理、消息管理、人事管理、系統(tǒng)管理等。</p><p><b> 4.3 系統(tǒng)構(gòu)架</b></p><p> 本系統(tǒng)的系統(tǒng)構(gòu)架圖如圖4-2所示。</p><p><b> 圖4-2 系統(tǒng)構(gòu)架<
60、/b></p><p><b> 4.4 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 4.4.1 數(shù)據(jù)庫(kù)的概要設(shè)計(jì)</p><p> 在對(duì)系統(tǒng)內(nèi)部數(shù)據(jù)進(jìn)行概念分析之后,得知系統(tǒng)數(shù)據(jù)庫(kù)需要存儲(chǔ)的實(shí)體和屬性,抽象出了概念模型(用ER圖來(lái)表示)。</p><p> 本系統(tǒng)的ER模型如圖4-3所示。</p>
61、<p> 圖4-3 系統(tǒng)ER模型</p><p> 4.4.2 數(shù)據(jù)庫(kù)的概念設(shè)計(jì)</p><p> 在該階段主要把ER模型轉(zhuǎn)化成關(guān)系模型。ER圖中的主要成分是實(shí)體類型和聯(lián)系類型。只要把實(shí)體類型和聯(lián)系類型轉(zhuǎn)換成關(guān)系模式就完成了從ER模型到關(guān)系模型的轉(zhuǎn)換。本系統(tǒng)使用SQL Server 2000作為數(shù)據(jù)庫(kù)管理系統(tǒng)。創(chuàng)建的數(shù)據(jù)庫(kù)名稱為jbpm。</p><p
62、> jbpm數(shù)據(jù)庫(kù)中包含的數(shù)據(jù)表及其相應(yīng)功能如表4-1所示。</p><p> 表4-1 jbpm數(shù)據(jù)庫(kù)包含的數(shù)據(jù)表及其功能</p><p> 1、用戶表(WFS_Users)如表4-2所示。</p><p> 表4-2 用戶信息表</p><p> 2、權(quán)限表(WFS_Authority)如表4-3所示。</p>
63、<p><b> 表4-3 權(quán)限表</b></p><p> 3、消息表(WFS_Message)如表4-4所示。</p><p><b> 表4-4 消息表</b></p><p> 4、日程表(WFS_Schedule)如表4-5所示。</p><p><b>
64、 表4-5 日程表</b></p><p> 5、出勤表(WFS_Attendance)如表4-6所示。</p><p><b> 表4-6 出勤表</b></p><p> 5 工作流辦公系統(tǒng)的具體實(shí)現(xiàn)</p><p> 5.1 系統(tǒng)開(kāi)發(fā)環(huán)境配置</p><p> 本系統(tǒng)使
65、用jBPM作為工作流程的開(kāi)發(fā)組件,要在系統(tǒng)中使用jBPM工具包,首先需要從jBoss的官網(wǎng)(http://www.jboss.org/jbossjbpm/jpd1_downloads)下載該開(kāi)發(fā)包。本系統(tǒng)選用的是jbpm-jpdl-3.2.3版本。下載jBPM開(kāi)發(fā)套件之后解壓開(kāi)作為工作目錄,如圖5-1所示。</p><p> 圖5-1 jBPM開(kāi)發(fā)套件內(nèi)容目錄結(jié)構(gòu)</p><p> 表
66、5-1當(dāng)中羅列了該開(kāi)發(fā)套件各目錄里的內(nèi)容。</p><p> 表5-1 jBPM開(kāi)發(fā)套件目錄結(jié)構(gòu)表</p><p> 5.2 系統(tǒng)各模塊具體實(shí)現(xiàn)</p><p> 5.2.1 數(shù)據(jù)庫(kù)連接模塊</p><p> 本系統(tǒng)采用JDBC連接SQL Server 2000數(shù)據(jù)庫(kù),連接步驟如下:</p><p><b
67、> 得到數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序</b></p><p> SQL Server 2000的JDBC驅(qū)動(dòng)程序名稱是com.Microsoft.jdbc.sqlserver.SQL</p><p> ServerDriver,通過(guò)Class.forName("com.Microsoft.jdbc.sqlserver.SQLServerDriver");注冊(cè)這
68、個(gè)驅(qū)動(dòng)程序。這樣就能使用這個(gè)驅(qū)動(dòng)來(lái)連接SQL Server 2000數(shù)據(jù)庫(kù)。</p><p><b> 創(chuàng)建數(shù)據(jù)庫(kù)連接</b></p><p> 數(shù)據(jù)庫(kù)連接是由DriverManager這個(gè)工廠類的getConnection方法獲得的。getConnection方法在獲得連接過(guò)程中,需要數(shù)據(jù)庫(kù)連接字符串、用戶名和密碼,SQL Server 2000數(shù)據(jù)庫(kù)的連接字符
69、串格式如下:</p><p> jdbc:microsoft:sqlserver://dbip:port/databasename</p><p> 其中,dpip是數(shù)據(jù)庫(kù)所在主機(jī)的ip,如果在本機(jī),可以填寫(xiě)localhost或127.0.0.1。port 是數(shù)據(jù)庫(kù)的端口,MySQL默認(rèn)端口是1433,databasename是所用的數(shù)據(jù)庫(kù)實(shí)例名稱。</p><p&
70、gt;<b> 執(zhí)行SQL語(yǔ)句</b></p><p> 得到數(shù)據(jù)庫(kù)連接后,可以通過(guò)連接對(duì)象的createStatement方法來(lái)創(chuàng)建一個(gè)Statement對(duì)象,Statement是用于執(zhí)行SQL語(yǔ)句的接口。有了Statement對(duì)象后,可以調(diào)用executeQuery或execute方法執(zhí)行給定的SQL語(yǔ)句。</p><p><b> 得到結(jié)果集&l
71、t;/b></p><p> Statement執(zhí)行executeQuery或execute方法后,返回一個(gè)Resultset對(duì)象,Resultset是用于指向結(jié)果集對(duì)象的接口,遍歷該對(duì)象就能遍歷結(jié)果集。</p><p> 對(duì)結(jié)果集做相應(yīng)的處理</p><p> 這一步驟主要是遍歷結(jié)果集取出相應(yīng)的記錄,根據(jù)業(yè)務(wù)需要對(duì)這些記錄進(jìn)行展現(xiàn)等處理。</p&
72、gt;<p> 關(guān)閉結(jié)果集,關(guān)閉Statement,關(guān)閉連接</p><p> 當(dāng)連接完成了,就要關(guān)閉相應(yīng)的資源以釋放內(nèi)存,后打開(kāi)的資源應(yīng)該先關(guān)閉,所以關(guān)閉順序?yàn)椋航Y(jié)果集 > Statement > 數(shù)據(jù)庫(kù)連接。</p><p> 使用JDBC連接SQL Server 2000數(shù)據(jù)庫(kù)具體實(shí)現(xiàn)主要代碼如下所示。</p><p> Co
73、nnection conn = null;Statement stmt = null;ResultSet rs = null;</p><p> Class.forName("com.Microsoft.jdbc.sqlserver.SQLServerDriver ");</p><p> conn = DriverManager.getConnection(<
74、;/p><p> " jdbc:microsoft:sqlserver://127.0.0.1:1433", "sa", "123");</p><p> stmt = conn.createStatement();</p><p> rs = stmt.executeQuery("Select
75、 * from WFS_Users");</p><p> while (rs.next()) {</p><p> System.out.println(rs.getString("UserId"));</p><p><b> }</b></p><p> rs.close();
76、stmt.close();conn.close();</p><p> 5.2.2 登錄模塊</p><p> 該模塊包括流程管理、日程管理、考勤管理、消息管理、重新登錄及主界面的設(shè)計(jì)。每一個(gè)系統(tǒng)用戶都擁有事先由系統(tǒng)管理員分配好的用戶名和密碼,此類型的用戶只能訪問(wèn)自己工作領(lǐng)域內(nèi)的相關(guān)頁(yè)面。</p><p> 登錄模塊的作用是根據(jù)用戶選擇的登錄通道,相應(yīng)展現(xiàn)輸入
77、用戶名和密碼的頁(yè)面,再根據(jù)用戶提供的用戶名和密碼到系統(tǒng)中驗(yàn)證用戶身份是否合法,合法的話將根據(jù)用戶身份轉(zhuǎn)向相應(yīng)的操作頁(yè)面,不合法的話將跳轉(zhuǎn)回登錄頁(yè)面,讓用戶重現(xiàn)登錄。系統(tǒng)登錄首頁(yè)(default.jsp),如圖5-2所示。</p><p><b> 圖5-2 登錄頁(yè)面</b></p><p> 登錄頁(yè)面主要代碼(default.jsp)</p><
78、;p> <form action="check.jsp" method="post" onSubmit="return form_check();" name="form1"></p><p> <input name="reaction" type="hidden"
79、; value="chklogin" /><tr></p><p> <td align="center" valign="top"></p><p> <table width="75%" align="center" height="1
80、00%" border="0" cellpadding="0" cellspacing="0"><tr></p><p> <td width="24%" height="30">用 戶:</td></p>&
81、lt;p> <td width="76%" height="30"><input type="text" name="username" size="15" class="inputtext"></td></tr></p><p> &l
82、t;tr><td height="25">密 碼:</td></p><p> <td height="25"><input type="password" name="pwd" size="15" class="in
83、puttext"><tr></p><p> <td height="45" colspan="2"><p align="center"></p><p> <input type="submit" value="登 陸"clas
84、s="loginbg"> </p><p> <input type="reset" value="取 消" class="loginbg" ></td></tr></p><p><b> </form>
85、</b></p><p> 在用戶填入用戶名和密碼后點(diǎn)擊【登錄】按鈕,系統(tǒng)會(huì)跳轉(zhuǎn)到check.jsp來(lái)判斷用戶名和密碼是否有效。根據(jù)MVC設(shè)計(jì)模式,系統(tǒng)將調(diào)用Controller層的UsersCl.java,該頁(yè)面調(diào)用Modle層的connDB.java和Users.java。系統(tǒng)會(huì)連接數(shù)據(jù)庫(kù)中的員工信息表中判讀是否存在相同的用戶名和密碼,并讀取用戶的權(quán)限,如果其權(quán)限為1則進(jìn)入普通用戶頁(yè)面,如果其權(quán)
86、限為2則進(jìn)入管理員頁(yè)面,如果其權(quán)限為3則進(jìn)入領(lǐng)導(dǎo)頁(yè)面,如果不存在則提示用戶名和密碼有錯(cuò)誤信息。如果用戶未填寫(xiě)用戶名或者密碼,系統(tǒng)將出現(xiàn)提示信息。</p><p> 登錄頁(yè)面主要代碼(check.jsp)</p><p><b> <%</b></p><p> UsersCl uc=new UsersCl();</p>
87、<p> if(uc.checkUsers(s_username,s_password)){</p><p> String username=uc.getAuth(s_username);</p><p> String fullname=uc.getUsername(s_username);</p><p> request.getSess
88、ion().setAttribute("loginuser",username);</p><p> request.getSession().setAttribute("fullname",fullname);</p><p> response.sendRedirect("index.jsp");</p>&
89、lt;p><b> }else{</b></p><p> response.sendRedirect("default.jsp");</p><p><b> }</b></p><p><b> %></b></p><p> 5.
90、2.3 普通用戶模塊</p><p> 1、總體頁(yè)面框架設(shè)計(jì)</p><p> 普通用戶登錄成功后,將進(jìn)入如圖5-3所示界面。</p><p> 圖5-3 普通用戶主界面</p><p> 頁(yè)面采用上下分欄模式,下分欄中又分左右分欄。上分欄用戶表明系統(tǒng)的名稱等一些信息。在下分欄中,左分欄用于展現(xiàn)普通用戶所具有的操作列表;右分欄用于展示
91、各操作項(xiàng)的詳細(xì)列表。</p><p> 該分欄模式使用的是傳統(tǒng)的iframe,它是將三個(gè)不同的頁(yè)面嵌入一個(gè)頁(yè)面中。該分欄框架支持Ajax,在拉動(dòng)左右或上下分界線時(shí),將發(fā)現(xiàn)頁(yè)面局部重新加載。</p><p> 普通員工主要職能是對(duì)系統(tǒng)中提供的為員工服務(wù)的一些功能,主要包括對(duì)以下四個(gè)方面的管理:流程管理、日程管理、考勤管理、消息管理。</p><p><b&g
92、t; 2.流程管理</b></p><p> 流程管理模塊的主要功能是對(duì)報(bào)銷流程進(jìn)行監(jiān)控。</p><p> 點(diǎn)擊“流程管理”選項(xiàng)。展開(kāi)流程管理的三個(gè)子選項(xiàng)是我的待辦任務(wù)、我要報(bào)銷和流程監(jiān)控。流程管理頁(yè)面如圖5-4所示。</p><p> 圖5-4 流程管理頁(yè)面</p><p> 1)點(diǎn)擊流程管理下的我的待辦任務(wù)選項(xiàng),會(huì)
93、在右分欄中顯示出普通用戶的待辦任務(wù)。如果有需要辦理的任務(wù),將會(huì)顯示在列表中。在顯示的列表中還會(huì)有超鏈接供用戶選擇處理,方便用戶進(jìn)行操作。</p><p> 2)點(diǎn)擊流程管理下的我要報(bào)銷選項(xiàng),右側(cè)的分欄中將會(huì)立即顯示報(bào)銷單供用戶填寫(xiě)。報(bào)銷單需要填寫(xiě)報(bào)銷主題、報(bào)銷金額和報(bào)銷說(shuō)明。用戶填寫(xiě)完成之后,點(diǎn)擊提交報(bào)銷按鈕。如果提交成功,將會(huì)在頁(yè)面中提示提交報(bào)銷成功;如果提交未成功,將會(huì)返回繼續(xù)修改填寫(xiě)。</p>
94、<p> 3)點(diǎn)擊流程管理下的流程監(jiān)控選項(xiàng),右側(cè)的分欄中將會(huì)顯示當(dāng)前系統(tǒng)正在運(yùn)行或已經(jīng)結(jié)束的流程。點(diǎn)擊相應(yīng)的超鏈接,將會(huì)查看并控制相應(yīng)流程。</p><p> 流程監(jiān)控頁(yè)面代碼(process-monitor.jsp)</p><p> <%jbpmContext=JbpmConfiguration.getInstance().createJbpmContext(
95、);</p><p> //取到當(dāng)前流程模版表里所有的最后一次發(fā)布的流程模版列表</p><p> List ls=jbpmContext.getGraphSession().findLatestProcessDefinitions();</p><p> jbpmContext.close();</p><p><b>
96、%></b></p><p> <table width="100%" border="1"></p><p> <tr><td>流程模版名稱</td><td>版本號(hào)</td><td>查看當(dāng)前模版所有正在運(yùn)行的流程實(shí)例</td><
97、;/tr></p><p><b> <%</b></p><p> for(int i=0;i<ls.size();i++){</p><p> ProcessDefinition pd=(ProcessDefinition)ls.get(i);</p><p><b> %>
98、</b></p><p> <tr><td><%=pd.getName() %></td><td><%=pd.getVersion() %></td><td></p><p> <a href="processinstance-list.jsp?pdId=<
99、%=pd.getId() %>" >查看</a></td></p><p> </tr><%}%></p><p><b> 3.日程管理</b></p><p> 日程管理的模塊主要功能是讓用戶明白當(dāng)前的任務(wù)安排,并提供便利的編輯工具方便用戶寫(xiě)下工作中遇到的隨筆記錄。
100、</p><p> 點(diǎn)擊“日程管理”選項(xiàng)。展開(kāi)流程管理的兩個(gè)個(gè)子選項(xiàng)是我的日程和我的便簽。日程管理頁(yè)面如圖5-5所示。</p><p> 圖5-5 日程管理頁(yè)面</p><p> 1)點(diǎn)擊日程管理下的我的日程選項(xiàng),會(huì)在右分欄中顯示出領(lǐng)導(dǎo)下發(fā)的任務(wù)安排。如果有需要辦理的任務(wù),將會(huì)顯示在列表中。在顯示的列表中還會(huì)有超鏈接供用戶選擇閱讀,形象直觀地顯示當(dāng)前用戶需要完
101、成的任務(wù)。</p><p> 2)點(diǎn)擊日程管理下的我的便簽選項(xiàng),右側(cè)的分欄中將會(huì)立即顯示以往用戶填寫(xiě)的一些便簽列表。便簽主要用來(lái)記錄用戶在工作中的隨筆記錄,提供用戶在工作中的辦公效率。</p><p> 日程管理頁(yè)面代碼(rest.jsp)</p><p> <table width="100%" border="1&quo
102、t; cellpadding="0" cellspacing="0"></p><p> <tr bgcolor="#FDFDD0"></p><p> <td>日程編號(hào)</td><td>標(biāo)題</td><td>內(nèi)容</td><td&
103、gt;發(fā)布時(shí)間</td><td colspan="2">操作</td></tr></p><p> <% ScheduleCl sc=new ScheduleCl();</p><p> List<Schedule> list=sc.getAllSchedule();</p><
104、p> Iterator<Schedule> it=list.iterator();</p><p> //hasNext是取值取的是當(dāng)前值.他的運(yùn)算過(guò)程是判斷下個(gè)是否有值如果有繼續(xù).</p><p> while(it.hasNext()){</p><p> Schedule sd=it.next();%></p>&
105、lt;p> <tr><td><%=sd.scheduleId%></td><td><%=sd.scheduleTitle%></td><td></p><p> <%=sd.scheduleContent%></td><td><%=sd.scheduleTime %&
106、gt;</td></p><p> <td><a href="schedule.jsp?userid=<%=sd.scheduleId %>">修改</a></td></p><p> <td><a HREF="schedule.jsp?userid=<%=sd
107、.scheduleId %>">刪除</a></td></p><p><b> </tr></b></p><p><b> <%}%></b></p><p><b> </table></b></p&g
108、t;<p><b> (4)考勤管理</b></p><p> 考勤管理的模塊主要功能是記錄并管理用戶的出勤情況。</p><p> 點(diǎn)擊“考勤管理”選項(xiàng)。展開(kāi)流程管理的兩個(gè)子選項(xiàng)是員工簽到簽退和考勤歷史查詢。日程管理頁(yè)面如圖5-6所示。</p><p> 圖5-6 考勤管理頁(yè)面</p><p>
109、 1)點(diǎn)擊考勤管理下的員工簽到簽退選項(xiàng),會(huì)在右分欄中顯示出員工簽到簽退的表單。用戶只需要根據(jù)自己情況填寫(xiě)是否簽到或者簽退,然后點(diǎn)擊添加按鈕信息就可以添加到系統(tǒng)中。</p><p> 2)點(diǎn)擊考勤管理下的考勤歷史查詢,右側(cè)的分欄中將會(huì)立即顯示用戶填寫(xiě)的考勤歷史記錄。通過(guò)對(duì)出勤情況的匯總,可以明白用戶在一段時(shí)間內(nèi)的出勤情況。</p><p> 考勤歷史查詢頁(yè)面代碼(attendanceHi
110、story.jsp)</p><p><b> <%</b></p><p> //調(diào)用Controller層的AttendanceCl來(lái)完成對(duì)考勤情況的控制</p><p> AttendanceCl sc=new AttendanceCl();</p><p> List<Attendance&g
111、t; list=sc.getAllAttendance();</p><p> Iterator<Attendance> it=list.iterator();</p><p> //hasNext是取值取的是當(dāng)前值.他的運(yùn)算過(guò)程是判斷下個(gè)是否有值如果有繼續(xù).</p><p> while(it.hasNext()){</p><
112、;p> //設(shè)it.next封裝類,調(diào)用強(qiáng)制轉(zhuǎn)換String類型賦值給i;</p><p> //調(diào)用Model層的Attendance來(lái)完成對(duì)考勤情況的調(diào)用</p><p> Attendance at=it.next();</p><p><b> %></b></p><p><b>
113、 ?。?)消息管理</b></p><p> 消息管理的模塊主要功能是對(duì)接收到的領(lǐng)導(dǎo)以及員工發(fā)給該用戶的消息。</p><p> 點(diǎn)擊“消息管理”選項(xiàng)。展開(kāi)消息管理的一個(gè)子選項(xiàng)是收到的消息。消息管理頁(yè)面如圖5-7所示。</p><p> 圖5-7 消息管理頁(yè)面</p><p> 點(diǎn)擊消息管理下的收到的消息選項(xiàng),會(huì)在右分欄中
114、顯示出領(lǐng)導(dǎo)下發(fā)的任務(wù)安排。如果有需要辦理的任務(wù),將會(huì)顯示在列表中。在顯示的列表中還會(huì)有超鏈接供用戶選擇閱讀,形象直觀地顯示當(dāng)前用戶需要完成的任務(wù)。</p><p> 消息管理頁(yè)面代碼(message.jsp)</p><p><b> <%</b></p><p> //調(diào)用Controller層的messageCl來(lái)完成對(duì)考勤情況
115、的控制</p><p> MessageCl sc=new MessageCl();</p><p> List<Message> list=sc.getAllMessage();</p><p> Iterator<Message> it=list.iterator();</p><p> //hasNext
116、是取值取的是當(dāng)前值.他的運(yùn)算過(guò)程是判斷下個(gè)是否有值如果有繼續(xù).</p><p> while(it.hasNext()){</p><p> //設(shè)it.next封裝類,調(diào)用強(qiáng)制轉(zhuǎn)換String類型賦值給i;</p><p> //調(diào)用Model層的message來(lái)完成對(duì)考勤情況的調(diào)用</p><p> Message ms=it.n
117、ext();</p><p><b> %></b></p><p> 5.2.4 管理員模塊</p><p> 1、管理員模塊主要界面</p><p> 管理員模塊主要界面如圖5-8所示。</p><p> 圖5-8 管理員模塊主界面</p><p>
118、根據(jù)系統(tǒng)設(shè)計(jì)階段作出的系統(tǒng)框架,管理員擁有對(duì)系統(tǒng)中的用戶進(jìn)行管理的權(quán)限,因此在管理員模塊比普通用戶模塊多出了一個(gè)用戶管理模塊。</p><p><b> 2.用戶管理</b></p><p> 用戶管理的模塊主要功能是對(duì)用戶的基本信息進(jìn)行控制管理。</p><p> 點(diǎn)擊“用戶管理”選項(xiàng)。展開(kāi)用戶管理的兩個(gè)個(gè)子選項(xiàng)是用戶查詢和添加用戶。用
119、戶管理頁(yè)面如圖5-9所示。</p><p> 圖5-9 日程管理頁(yè)面</p><p> 1)點(diǎn)擊用戶管理下的用戶查詢選項(xiàng),會(huì)在右分欄中顯示出當(dāng)前系統(tǒng)中存在的所有用戶。如果有需要對(duì)用戶進(jìn)行編輯,只需要點(diǎn)擊列表中的編輯選項(xiàng),就會(huì)進(jìn)入用戶編輯界面,編輯完成之后點(diǎn)擊保存,系統(tǒng)就會(huì)保存用戶信息。點(diǎn)擊列表中刪除選項(xiàng),系統(tǒng)會(huì)提示確定刪除用戶嗎,點(diǎn)擊確定,系統(tǒng)將會(huì)執(zhí)行刪除命令。</p>
120、<p> 2)點(diǎn)擊用戶管理下的添加用戶選項(xiàng),右側(cè)的分欄中將會(huì)顯示添加用戶的表單。領(lǐng)導(dǎo)填寫(xiě)完成用戶信息之后,點(diǎn)擊提交按鈕。如果提交成功,將會(huì)在頁(yè)面中提示提交添加用戶成功;如果提交未成功,將會(huì)返回繼續(xù)修改填寫(xiě)。</p><p> 用戶管理頁(yè)面代碼(users-list.jsp)</p><p> <table width="100%" border=&
121、quot;1" cellpadding="0" cellspacing="0"></p><p> <tr bgcolor="#FDFDD0"></p><p> <td>工號(hào)</td><td>姓名</td><td>部門(mén)編號(hào)</td&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——基于bs辦公系統(tǒng)
- 基于工作流引擎的系統(tǒng)框架設(shè)計(jì)開(kāi)發(fā)--工作流引擎子系統(tǒng)——畢業(yè)論文
- 基于工作流引擎的系統(tǒng)框架設(shè)計(jì)開(kāi)發(fā)--工作流引擎子系統(tǒng)——畢業(yè)論文
- 畢業(yè)論文——基于bs辦公系統(tǒng)
- 畢業(yè)論文--基于bs架構(gòu)的網(wǎng)上考試系統(tǒng)
- 基于bs架構(gòu)的超市會(huì)員管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文---基于bs架構(gòu)的java考試系統(tǒng)的設(shè)計(jì)
- 畢業(yè)論文---基于bs架構(gòu)保險(xiǎn)系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)
- 基于bs架構(gòu)下ajax的應(yīng)用-畢業(yè)論文
- 基于bs架構(gòu)的crm系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(畢業(yè)論文)
- 基于bs架構(gòu)下的管理軟件設(shè)計(jì)與開(kāi)發(fā)-畢業(yè)論文
- 基于bs架構(gòu)下的管理軟件設(shè)計(jì)與開(kāi)發(fā)-畢業(yè)論文
- 基于工作流的企業(yè)協(xié)同辦公系統(tǒng)的研究與開(kāi)發(fā).pdf
- 基于bs架構(gòu)的電氣專業(yè)學(xué)習(xí)平臺(tái)設(shè)計(jì)與開(kāi)發(fā)【畢業(yè)論文】
- 基于服務(wù)的工作流系統(tǒng)架構(gòu)的研究.pdf
- 基于bs的汽車銷售系統(tǒng)畢業(yè)論文
- 基于bs構(gòu)架和工作流oa系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于struts架構(gòu)的辦公自動(dòng)化系統(tǒng)畢業(yè)論文
- 基于bs的成績(jī)管理系統(tǒng)畢業(yè)論文
- 基于工作流技術(shù)的公安辦公信息系統(tǒng)的研究與開(kāi)發(fā).pdf
評(píng)論
0/150
提交評(píng)論