畢業(yè)論文-學(xué)生成績管理系統(tǒng)_第1頁
已閱讀1頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  1 引 言1</b></p><p>  1.1 項目開發(fā)背景1</p><p>

2、  1.2 項目開發(fā)的目標(biāo)1</p><p>  1.3 項目提出的意義1</p><p><b>  2 相關(guān)技術(shù)3</b></p><p><b>  2.1 JSP3</b></p><p>  2.1.1 JSP簡介3</p><p>  2.1.2 JSP

3、 的優(yōu)點(diǎn)3</p><p>  2.2 Java Servlet4</p><p>  2.2.1 Servlet 概述4</p><p>  2.2.2 Servlet API4</p><p>  2.2.3 Servlet的優(yōu)點(diǎn)4</p><p>  2.3 Java Bean5</p>

4、<p>  2.3.1 JavaBean簡介5</p><p>  2.3.2 JavaBean的Scope屬性6</p><p>  2.4 UML(統(tǒng)一建模語言)6</p><p>  2.4.1 UML(統(tǒng)一建模語言)簡介6</p><p>  2.4.2 用例圖-----捕獲系統(tǒng)中用戶能夠看見的功能8</p

5、><p>  2.4.3 類圖-----捕獲系統(tǒng)的詞匯表9</p><p>  2.5 C/S結(jié)構(gòu)和B/S結(jié)構(gòu)9</p><p>  2.5.1 B/S模式的優(yōu)勢10</p><p>  2.5.2 C/S模式的優(yōu)勢10</p><p>  2.5.3 C/S模式與B/S模式相結(jié)合方案11</p>

6、<p>  3系統(tǒng)分析設(shè)計12</p><p>  3.1系統(tǒng)需求分析12</p><p>  3.1.1系統(tǒng)調(diào)查12</p><p>  3.1.2 系統(tǒng)需求說明12</p><p>  3.1.3 用戶需求12</p><p>  3.2總體設(shè)計13</p><p> 

7、 3.3 UML建模13</p><p>  3.3.1 學(xué)生管理系統(tǒng)的用例分析13</p><p>  3.3.2 學(xué)生管理系統(tǒng)的領(lǐng)域分析14</p><p>  3.3.3 學(xué)生管理系統(tǒng)的設(shè)計15</p><p>  3.4數(shù)據(jù)庫技術(shù)20</p><p>  3.4.1數(shù)據(jù)庫管理系統(tǒng)選擇20</p

8、><p>  3.4.2 MySQL 概述20</p><p>  3.4.3 數(shù)據(jù)庫ER圖22</p><p>  3.4.4 構(gòu)建系統(tǒng)數(shù)據(jù)庫22</p><p>  3.5 系統(tǒng)配置25</p><p>  3.6 系統(tǒng)實(shí)現(xiàn)26</p><p>  3.6.1 用戶登錄界面26<

9、;/p><p>  3.6.2 管理員登錄后的操作界面26</p><p>  3.6.3 添加學(xué)生的操作界面27</p><p><b>  4. 總論29</b></p><p>  4.1系統(tǒng)的優(yōu)點(diǎn)29</p><p>  4.2系統(tǒng)存在的不足29</p><p&g

10、t;<b>  致謝30</b></p><p><b>  參考文獻(xiàn)31</b></p><p><b>  摘 要</b></p><p>  近年來,我國高等教育迎來了蓬勃發(fā)展的新局面,采用傳統(tǒng)的學(xué)生信息管理方法(如直接手工管理或者開放性程度不高的管理系統(tǒng))不可避免的浪費(fèi)大量人力、物力、財

11、力資源,不能滿足當(dāng)前高等教育發(fā)展的需求,已經(jīng)成為我國高等教育擴(kuò)大規(guī)模的“瓶頸”。建立高性能的學(xué)生信息管理系統(tǒng)能高極大的提高學(xué)生信息管理的效率。本文采用面向?qū)ο蠹夹g(shù),使用UML進(jìn)行系統(tǒng)分析和設(shè)計,較成功地解決了學(xué)生管理信息地分散采集、綜合利用、統(tǒng)一管理、資源共享等問題。主要介紹了學(xué)生信息管理系統(tǒng)地現(xiàn)狀和主要特征,系統(tǒng)所采用的UML、Servlet、JavaBean、JSP與MySQL等技術(shù)和工具,C/S模式和B/S模式以及使用UML進(jìn)行得

12、系統(tǒng)的開發(fā)設(shè)計和功能模塊的具體實(shí)現(xiàn)。</p><p>  關(guān)鍵詞:學(xué)生信息管理;JSP;MySQL數(shù)據(jù)庫;統(tǒng)一建模語言</p><p><b>  Abstract</b></p><p>  Recently, the education of the higher schools has had a complexion with the

13、schools’ enrolling large amount of freshmen. So adopting conventional students’ basic information procedure(as direct management by handiwork, administrative system not high of open degree) would waste a large amount of

14、manpower, material and financial resources, and progressively can’t be met with the demand of the higher education’s development at present. All this has become the “bottleneck” in the course of enlarging</p><

15、p>  The paper mainly analyzes the target’s technology and explains the design of the students’ information management system using UML(Unified Modeling Language). So that it can solve such problems as scattering and g

16、athering data, comprehensive utilization, unified management, resource-sharing, etc.</p><p>  The paper mainly deals with the prevailing situation and characteristics of the students’ information management

17、system, the technology and tools including UML、Servlet、JavaBean、JSP and MySQL, Model C/S and B/S and the process of the design of the system using UML as well as the implementation of each functional modulation</p>

18、<p>  Key words: SIMS(student information management system);JSP;MySQL DataBase;UML</p><p><b>  1 引言</b></p><p>  1.1 項目開發(fā)背景</p><p>  在現(xiàn)代社會中,教育界是IT廠商的重要客戶之一,隨著計算機(jī)

19、的發(fā)展,各大中院校紛紛建設(shè)了自己的管理信息系統(tǒng),其中,學(xué)生管理信息系統(tǒng)是一個重要組成部分。應(yīng)該說,學(xué)生管理信息系統(tǒng)是一個比較古老的應(yīng)用,在數(shù)據(jù)庫應(yīng)用剛出現(xiàn)時,就在DOS系統(tǒng)下出現(xiàn)了各種版本的學(xué)生管理信息系統(tǒng)。從dBase到Oracle,從單機(jī)版到網(wǎng)絡(luò)版到目前的三層結(jié)構(gòu),學(xué)生管理信息系統(tǒng)也在不斷地隨計算機(jī)技術(shù)的發(fā)展擴(kuò)充其功能。伴隨著教育部的面向21世紀(jì)教育振興行動計劃(教育部1998年12月24日制定,國務(wù)院1999年1月13日批轉(zhuǎn))的實(shí)

20、施,全國各個高校均大力推進(jìn)高校內(nèi)部管理體系改革。以計算機(jī)網(wǎng)絡(luò)技術(shù)為核心的信息高速公路的興起,更是突破了傳統(tǒng)教育文化觀念和教育活動的時空界限,使學(xué)校的教育手段和決策效率都發(fā)生了深刻的變化。隨著校園網(wǎng)的投資興建,信息現(xiàn)代化成為高校一個新的發(fā)展與競爭的熱點(diǎn),也成為影響學(xué)校教學(xué)、科研實(shí)力、學(xué)校管理水平的重要因素,如何實(shí)現(xiàn)基于校園網(wǎng)絡(luò)的現(xiàn)代學(xué)生信息管理,這是目前學(xué)生管理的又一新課題。但目前許多高校學(xué)生管理工作依然為傳統(tǒng)的學(xué)生管理模式,采用手工作業(yè)

21、式管理,其文字工作量大,效率不高,資源綜合利用差,各種報表完成周</p><p>  實(shí)現(xiàn)學(xué)生管理信息化便于在各院系、一個學(xué)校、一個地區(qū)甚至全國同類院校中達(dá)到資源共享,取長補(bǔ)短,使學(xué)生管理更加科學(xué)化;同時,還有助于規(guī)范高等學(xué)校的管理,促進(jìn)學(xué)校開展學(xué)生管理評估工作,提高辦學(xué)質(zhì)量,加強(qiáng)信息交流與處理,推動管理改革。所以實(shí)施學(xué)生信息化管理是目前高校學(xué)生管理工作發(fā)展的必然。</p><p>  1

22、.2 項目開發(fā)的目標(biāo)</p><p>  舊的管理手段已不能適應(yīng)時代的發(fā)展,因?yàn)樗速M(fèi)了了許多的人力和物力。在當(dāng)今信息時代這種傳統(tǒng)的管理方法必然被計算機(jī)為基礎(chǔ)的信息管理系統(tǒng)所代替。利用計算機(jī)對學(xué)生信息進(jìn)行管理,具有人工管理無法比擬的優(yōu)點(diǎn),如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等,這些優(yōu)點(diǎn)能夠極大的提高學(xué)生信息管理的效率,也是科學(xué)化、正規(guī)化的體現(xiàn)。因此,開發(fā)適應(yīng)新形勢需要的學(xué)生信息管理

23、系統(tǒng)是很必要的。</p><p>  建立學(xué)生信息管理系統(tǒng),采用計算機(jī)對學(xué)生信息進(jìn)行管理,進(jìn)一步提高辦學(xué)效益和現(xiàn)代化水平。幫助廣大教師提高工作效率,實(shí)現(xiàn)學(xué)生信息管理工作流程的系統(tǒng)化、規(guī)范化和自動化。 </p><p>  1.3 項目提出的意義 </p><p>  二十世紀(jì)科技發(fā)展的卓越成就之一就是發(fā)明了電子計算機(jī)。它是一種自動、高速、精確地處理信息的現(xiàn)代化電子設(shè)

24、備。由于它具有速度快、精度高、存儲容量大、自動化程度高的特點(diǎn),目前已廣泛深入地適用社會生活的各個領(lǐng)域,對人類科學(xué)和生活發(fā)揮著不可估量的作用,從某種程度上講,計算機(jī)理論水平及其應(yīng)用的深度、廣度已成為衡量一個國家現(xiàn)代化水平的重要標(biāo)志之一。</p><p>  隨著高等教育改革的逐年加快,學(xué)生數(shù)量的穩(wěn)定增加,舊的學(xué)生信息管理體制(如主要基于文字記錄管理或者開放性程度不高的系統(tǒng))已經(jīng)不能適應(yīng)當(dāng)今社會發(fā)展的需要;以計算機(jī)技

25、術(shù)為基礎(chǔ)的新型學(xué)生信息管理系統(tǒng)已經(jīng)成為我國高等教育擴(kuò)大規(guī)模和培養(yǎng)高等人才跨世紀(jì)工程的關(guān)鍵環(huán)節(jié),也是高等教育得以順利發(fā)展的基礎(chǔ)條件。建設(shè)相關(guān)的學(xué)生信息管理系統(tǒng),將會促進(jìn)高等教育的發(fā)展,進(jìn)行基于網(wǎng)絡(luò)環(huán)境的學(xué)生信息管理系統(tǒng)的研發(fā)可以為我國高等教育擴(kuò)大規(guī)模發(fā)展的跨世紀(jì)工程提供強(qiáng)有力的技術(shù)支持,具有一定的應(yīng)用價值。如何有效管理學(xué)生信息、方便管理人員實(shí)時獲取學(xué)生信息資料、保障系統(tǒng)安全已經(jīng)成為當(dāng)前開發(fā)學(xué)生信息管理系統(tǒng)面臨的首要問題。</p>

26、;<p>  高層次人才培養(yǎng)的水平不應(yīng)該只表現(xiàn)在數(shù)量上,更加應(yīng)該是質(zhì)量上的高標(biāo)準(zhǔn)。這必然會對管理上提出了更加的要求。為了提高高校學(xué)生教育的管理水平和效率,學(xué)校各部門積極引進(jìn)和開發(fā)先進(jìn)的計算機(jī)管理手段,促進(jìn)了信息的收集、管理和交換,但是各個部門之間的軟件模塊存在體系不一致、系統(tǒng)兼容性差、不方便擴(kuò)展、安全性能差、開放程度低等缺點(diǎn)。隨著互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,校園內(nèi)部網(wǎng)建立,為信息管理現(xiàn)代化和信息交流提供了良好的運(yùn)行環(huán)境。迫切要求

27、信息共享,對信息標(biāo)準(zhǔn)化的要求也更加的迫切,開發(fā)高效實(shí)時的學(xué)生信息管理系統(tǒng)。</p><p><b>  2 相關(guān)技術(shù)</b></p><p><b>  2.1 JSP</b></p><p>  2.1.1 JSP簡介</p><p>  JSP(Java Server Pages)是由

28、Sun Microsystems公司倡導(dǎo)、許多公司參與建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),該技術(shù)為創(chuàng)建顯示動態(tài)內(nèi)容的Web頁面提供了一個簡捷而快速的方法。JSP技術(shù)的設(shè)計目的是使得構(gòu)建基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器、應(yīng)用服務(wù)器、瀏覽器和開發(fā)工具共同工作。 JSP規(guī)范就是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。在傳統(tǒng)的網(wǎng)頁HTML文件(*htm,*.ht

29、ml)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(*.jsp)。Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶。程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送 email 等等,這正是建立動態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是運(yùn)行的結(jié)果,對客戶瀏覽器的要求最低,可以實(shí)現(xiàn)無Plugi

30、n,無ActiveX,無Java Applet,甚至無Frame。</p><p>  2.1.2 JSP 的優(yōu)點(diǎn)[4]</p><p>  2.1.2.1 將內(nèi)容的生成和顯示進(jìn)行分離</p><p>  使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識來設(shè)計和格式化最終頁面。使用JSP標(biāo)識或者小腳本來生成頁面上的動態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來

31、變化的,例如請求帳戶信息或者特定的一瓶酒的價格)。生成內(nèi)容的邏輯被封裝在標(biāo)識和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識和JavaBeans中,那么其他人,如Web管理人員和頁面設(shè)計者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。在服務(wù)器端,JSP引擎解釋JSP標(biāo)識和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且

32、將結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。</p><p>  2.1.2.2 強(qiáng)調(diào)可重用的組件  絕大多數(shù)JSP頁面依賴于可重用的,跨平臺的組件(JavaBeans或者Enterprise JavaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些

33、組件能夠?yàn)楦嗟氖褂谜呋蛘呖蛻魣F(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡</p><p>  2.1.2.3 采用標(biāo)識簡化頁面開發(fā)</p><p>  Web頁面開發(fā)人員不會都是熟悉腳本語言的編程人員。Java Server Pages技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識中進(jìn)行動態(tài)內(nèi)容生

34、成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識能夠訪問和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時的功能?! ⊥ㄟ^開發(fā)定制化的標(biāo)識庫,JSP技術(shù)是可以擴(kuò)展的。今后,第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來工作?! SP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持

35、企業(yè)級的分布式應(yīng)用。作為采用Java技術(shù)的家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。  由于JSP頁面的內(nèi)置腳本語言是基于Java編程語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術(shù)的所有好處,包括健壯的存儲管理和安全性。作為Java平臺的一部分,JSP擁有Java編程語言“一次</p>

36、<p>  2.2 Java Servlet</p><p>  2.2.1 Servlet 概述</p><p>  一個Servlet就是Java編程語言中的一個類,它被用來擴(kuò)展服務(wù)器的性能,它是在服務(wù)器上駐留的可以通過“請求-響應(yīng)”編程模型來訪問的應(yīng)用程序。Servlet是最主要的Java Web應(yīng)用組件之一,是與平臺無關(guān)的服務(wù)器端組件;運(yùn)行在Servlet容器中。Serv

37、let容器負(fù)責(zé)處理客戶請求、把請求傳送給Servlet并把結(jié)果返回給客戶。不同程序的容器實(shí)際實(shí)現(xiàn) 可能有所變化,但容器與Servlet之間的接口是由ServletAPI定義好的,這個接口定義了Servlet容器在Servlet上要調(diào)用的方法及傳遞給Servlet的對象類。</p><p>  Servlet的生命周期:       

38、0;</p><p>  ★Servlet容器創(chuàng)建Servlet的一個實(shí)例</p><p>  ★容器調(diào)用該實(shí)例的init()方法</p><p>  ★如果容器對該Servlet有請求,則調(diào)用此實(shí)例的service()方法</p><p>  ★ 容器在銷毀本實(shí)例前調(diào)用它的destroy()方法</p><p&

39、gt;  ★ 銷毀并標(biāo)記該實(shí)例以供作為垃圾收集</p><p>  一旦請求了一個Servlet,就沒有辦法阻止容器執(zhí)行一個完整的生命周期。容器在Servlet首次被調(diào)用時創(chuàng)建它的一個實(shí)例,并保持該實(shí)例在內(nèi)存中,讓它對所有的請求進(jìn)行處理。容器可以決定在任何時候把這個實(shí)例從內(nèi)存中移走。在典型的模型中,容器為每個Servlet創(chuàng)建一個單獨(dú)的實(shí)例,容器并不會每接到一個請求就創(chuàng)建一個新線程,而是使用一個線程池來

40、動態(tài)的將線程分配給到來的請求,但是這從Servlet的觀點(diǎn)來看,效果和為每個請求創(chuàng)建一個新線程的效果相同。</p><p>  2.2.2 Servlet API</p><p>  Servlet框架由兩個包組成:javax.servlet和javax.servlet.http;其核心是javax.servlet.Servlet接口,該接口5個方法,其中有三個方法代表了Servlet的生

41、命周期: </p><p>  init() 負(fù)責(zé)初始化Servlet對象 </p><p>  service() 負(fù)責(zé)響應(yīng)來自客戶的請求 </p><p>  destroy() 當(dāng)Servlet對象退出生命周期時,負(fù)責(zé)釋放占用的資源</p><p>  HTTP的請求方式包括DELETE、GET、OPTIONS、POST、PUT、TRA

42、CE,在HttpServlet類中分別提供了相應(yīng)的方法: doDelete()、doGet()、doOptions()、doPost()、doPut()、doTrace() </p><p>  2.2.3 Servlet的優(yōu)點(diǎn)[5]</p><p>  Servlet是Java技術(shù)對CGI編程的回答。Servlet程序在服務(wù)器端運(yùn)行,動態(tài)地生成Web頁面。與傳統(tǒng)的CGI和許多其他類似CG

43、I的技術(shù)相比,Java Servlet具有更高的效率,更容易使用,功能更強(qiáng)大,具有更好的可移植性,更節(jié)省投資。</p><p><b>  2.2.3.1高效</b></p><p>  在傳統(tǒng)的CGI中,每個請求都要啟動一個新的進(jìn)程,如果CGI程序本身的執(zhí)行時間較短,啟動進(jìn)程所需要的開銷很可能反而超過實(shí)際執(zhí)行時間。而在Servlet中,每個請求由一個輕量級的Java

44、線程處理(而不是重量級的操作系統(tǒng)進(jìn)程)。在傳統(tǒng)CGI中,如果有N個并發(fā)的對同一CGI程序的請求,則該CGI程序的代碼在內(nèi)存中重復(fù)裝載了N次;而對于Servlet,處理請求的是N個線程,只需要一份Servlet類代碼。在性能優(yōu)化方面,Servlet也比CGI有著更多的選擇,比如緩沖以前的計算結(jié)果,保持?jǐn)?shù)據(jù)庫連接的活動,等等。</p><p>  2.2.3.2 方便</p><p>  Se

45、rvlet提供了大量的實(shí)用工具例程,例如自動地解析和解碼HTML表單數(shù)據(jù)、讀取和設(shè)置HTTP頭、處理Cookie、跟蹤會話狀態(tài)等。</p><p>  2.2.3.3功能強(qiáng)大</p><p>  在Servlet中,許多使用傳統(tǒng)CGI程序很難完成的任務(wù)都可以輕松地完成。例如,Servlet能夠直接和Web服務(wù)器交互,而普通的CGI程序不能。Servlet還能夠在各個程序之間共享數(shù)據(jù),使得數(shù)

46、據(jù)庫連接池之類的功能很容易實(shí)現(xiàn)。</p><p>  2.2.3.4可移植性好</p><p>  Servlet用Java編寫,Servlet API具有完善的標(biāo)準(zhǔn)。因此,為I-Planet Enterprise Server寫的Servlet無需任何實(shí)質(zhì)上的改動即可移植到Apache、Microsoft IIS或者WebStar,有的主流服務(wù)器都直接或通過插件支持Servlet。 &l

47、t;/p><p>  2.2.3.5節(jié)省投資</p><p>  不僅有許多廉價甚至免費(fèi)的Web服務(wù)器可供個人或小規(guī)模網(wǎng)站使用,而且對于現(xiàn)有的服務(wù)器,如果它不支持Servlet的話,要加上這部分功能也往往是免費(fèi)的(或只需要極少的投資)。</p><p>  2.3 Java Bean</p><p>  2.3.1 JavaBean簡介[4]&l

48、t;/p><p>  JavaBean是Sun公司為進(jìn)入因特網(wǎng)、企業(yè)網(wǎng)以及萬維網(wǎng)上進(jìn)行分布式計算的組件結(jié)構(gòu)的入口。按照Sun公司的定義,JavaBean是一個可重復(fù)使用的軟件部分,該部件可以用來生成其進(jìn)行可視化處理的組件。JavaBean是描述Java的軟件組件模型,有點(diǎn)類似于Microsoft的COM組件概念。JavaBean組件是Java類,這些類遵循一個接口格式,以便于使方法命名、底層行為以及集成或?qū)崿F(xiàn)的行為能

49、夠把類看做標(biāo)準(zhǔn)的JavaBean組件來進(jìn)行構(gòu)造。在Java模型中,通過JavaBean可以無限擴(kuò)充Java程序的功能,通過JavaBean的組合可以快速的生成新的應(yīng)用程序。對于程序員來說,最好的一點(diǎn)就是JavaBean可以實(shí)現(xiàn)代碼的重復(fù)利用,另外對于程序的易維護(hù)性等等也有很重大的意義。</p><p>  JavaBean被稱為是Java組件技術(shù)的核心。JavaBean的結(jié)構(gòu)必須滿足一定的命名約定。JavaBea

50、n類似于Windows下的ActiveX控件:它們都能夠提供常用功能并且可以重復(fù)使用。JavaBean可以在JSP程序中應(yīng)用,這使得開發(fā)人員可以把某些關(guān)鍵功能和核心算法提取出來,封裝成為一個組件對象,增加了代碼的重用率和系統(tǒng)的安全性。如將訪問數(shù)據(jù)庫的功能、數(shù)據(jù)處理功能編寫封裝為JavaBean組件,然后在某個JSP程序中加以調(diào)用。JavaBean技術(shù)與ActiveX相比,有著很大的優(yōu)越性,例如JavaBean與平臺無關(guān)性,使得JavaB

51、ean從一個平臺移植到另外的平臺上,代碼可以不需要修改,甚至不需要重新編譯。但是ActiveX就不同,它只能夠應(yīng)用于Windows平臺,而且它的代碼移植性很差,從Windows98平臺移植到NT平臺就需要重新編譯代碼,甚至要大幅度改寫程序。另一方面JavaBean比ActiveX要容易編寫很多,用起來也方便得多。JavaBean組件在使用以前不需要注冊,而ActiveX組件在使用以前必須在操作系統(tǒng)中注冊,否則在運(yùn)行的時候,系統(tǒng)會報錯。&

52、lt;/p><p>  2.3.2 JavaBean的Scope屬性</p><p>  對于JSP程序而言,使用JavaBean組件不僅可以封裝許多信息,而且可以將一些數(shù)據(jù)處理的邏輯隱藏到JavaBean的內(nèi)部,除此之外,還可以設(shè)定JavaBean的Scope屬性,使得JavaBean組件對于不同的任務(wù)具有不同的生命周期和不同的使用范圍。</p><p>  2.3.

53、2.1 Application Scope</p><p>  如果JavaBean的Scope屬性被指定為Application,即這個JavaBean組件具有Application Scope。如果一個JavaBean組件具有Application Scope,那么它的生命周期JSP的Application對象同步,作用范圍也和Application對象一樣。使用這種類型的JavaBean組件,可以在多個用戶

54、之間共享全局信息。具體來說,它的生命周期是這樣:如果某個JSP程序使用<jsp:useBean>操作指令創(chuàng)建了一個JavaBean對象,而且這個JavaBean組件具有Application Scope,那么這個JavaBean就一直在服務(wù)器的內(nèi)存空間中待命,隨時處理客戶端的請求,直到服務(wù)器關(guān)閉為止,它的保存信息才消失,它所占用的系統(tǒng)資源才會被釋放。</p><p>  2.3.2.2 Session

55、 Scope</p><p>  如果一個JavaBean組件的屬性值為Session,那么這個JavaBean組件的生命周期、作用范圍就和JSP的Session對象的生命周期、作用范圍一樣。即這一類型的JavaBean組件的生命周期就是某個會話過程所經(jīng)歷的時間。會話過程是對于單個用戶而言的,會話過程的開始以用戶開始訪問某個網(wǎng)站為標(biāo)志,會話過程的結(jié)束以用戶結(jié)束對該網(wǎng)站的訪問為標(biāo)志。不同用戶對應(yīng)著不同會話過程,不同

56、的會話過程之間互不干涉,互不影響。</p><p>  2.3.2.3 Request Scope</p><p>  如果JavaBean的Scope屬性值被設(shè)為request,那么這種類型的JavaBean組件對象的生命周期、作用范圍和JSP的Request對象一樣。當(dāng)一個JSP程序使用<jsp:forward>操作指令定向到另一個JSP程序或者是使用<jsp:inc

57、lude>操作指令導(dǎo)入另外的JSP程序,那么第一個JSP程序會把Request對象傳送到下一個JSP程序,而屬于Request Scope的JavaBean組建對象也將伴隨著Request對象送出,被第二個JSP程序接受。因此,所有通過這兩個操作指令連接在一起的JSP程序都可以共享一個Request對象,共享這種類型的JavaBean組件對象。</p><p>  這種類型的JavaBean組件對象使得JS

58、P程序之間傳遞信息更為容易,不過美中不足的是這種JavaBean不能夠用于客戶端與服務(wù)器之間傳遞信息,因?yàn)榭蛻舳耸菦]有辦法執(zhí)行JSP程序,創(chuàng)建新的JavaBean組件對象。</p><p>  2.3.2.4 Page Scope</p><p>  如果一個JavaBean的Scope屬性被設(shè)為page,那么它的生命周期和作用范圍在這四種類型的JavaBean組件中是最小的。Page S

59、cope類型的JavaBean組件的生命周期為JSP程序的運(yùn)行周期,當(dāng)JSP程序運(yùn)行結(jié)束,那么該JavaBean組件的生命周期也就結(jié)束。Page Scope類型的JavaBean組件程序的作用范圍只限于當(dāng)前的JSP程序中,它無法在別的JSP程序中起作用,對應(yīng)于不同的客戶端請求,服務(wù)器都會創(chuàng)建新的JavaBean組件對象,而且一旦客戶端的請求執(zhí)行完畢,那么該JavaBean對象會馬上注銷,無法為別的客戶端請求所使用。</p>

60、<p>  2.4 UML(統(tǒng)一建模語言) </p><p>  2.4.1 UML(統(tǒng)一建模語言)簡介</p><p>  UML(統(tǒng)一建模語言)是為軟件系統(tǒng)的制品進(jìn)行詳述(specifying)、可視化(visualizing)、構(gòu)造化(constructing)、文檔化(documenting)的一種語言。UML目前是軟件行業(yè)標(biāo)準(zhǔn)的建模語言??梢圆捎肬ML對需求、分析、設(shè)

61、計、實(shí)現(xiàn)、部署等工作進(jìn)行標(biāo)準(zhǔn)的形式化描述,達(dá)到交流共同的作用。同時基于UML的模型驅(qū)動開發(fā)支持以架構(gòu)為核心、、快速分析設(shè)計、迭代增量的開發(fā)方法。</p><p>  UML語言由圖元、關(guān)系、擴(kuò)展機(jī)制和對象約束語言(OCL)組合。</p><p><b>  2.4.1.1圖元</b></p><p><b>  圖2-1 圖元圖&l

62、t;/b></p><p>  2.4.1.2關(guān)系[1]</p><p>  2.4.1.2.1依賴關(guān)系</p><p>  依賴關(guān)系是一種使用關(guān)系,特定事物的改變有可能會影響到使用該事物的事物,反之不成立。在我們想顯示一個事物使用另一個事物時使用依賴關(guān)系。通常情況下,依賴關(guān)系體現(xiàn)在某個類的方法使用另一個類作為參數(shù)。</p><p> 

63、 2.4.1.2.2關(guān)聯(lián)關(guān)系</p><p>  關(guān)聯(lián)表示兩個類之間存在某種語義上的聯(lián)系。例如,一個人為一家公司工作,一家公司有許多辦公室。我們就認(rèn)為人和公司、公司和辦公室之間存在某種語義上的聯(lián)系。在分析設(shè)計的類圖模型中 , 則在對應(yīng)人類和公司類、公司類和辦公室類之間建立關(guān)聯(lián)關(guān)系。 </p><p>  關(guān)聯(lián)有兩元關(guān)系和多元關(guān)系。兩元關(guān)系是指一種一對一的關(guān)系,多元關(guān)系是一對多或多對一的關(guān)系

64、。一般用實(shí)線連接有關(guān)聯(lián)的同一個類或不同的兩個類。當(dāng)我們想要表示結(jié)構(gòu)化關(guān)系時使用關(guān)聯(lián)。 </p><p>  關(guān)聯(lián)可以有方向,表示該關(guān)聯(lián)單方向被使用。關(guān)聯(lián)上加上箭頭表示方向,在 UML 中稱為導(dǎo)航。我們將只在一個方向上存在導(dǎo)航表示的關(guān)聯(lián),稱作單向關(guān)聯(lián),在兩個方向上都有導(dǎo)航表示的關(guān)聯(lián),稱作雙向關(guān)聯(lián)。 </p><p>  既然關(guān)聯(lián)可以是雙向的,最復(fù)雜的命名方法是每個方向上給出一個名字,這樣的關(guān)

65、聯(lián)有兩個名字,可以用小黑三角表示名字的方向。為關(guān)聯(lián)命名有幾種方法,其原則是該命名是否有助于理解該模型。 </p><p>  關(guān)聯(lián)兩頭的類以某種角色參與關(guān)聯(lián)。例如:" 公司 " 以 " 雇主 " 的角色," 人 " 以 " 雇員 " 的角色參與的 " 工作合同 " 關(guān)聯(lián)。 " 雇主 " 和 &q

66、uot; 雇員 " 稱為角色名。如果在關(guān)聯(lián)上沒有標(biāo)出角色名,則隱含地用類的名稱作為角色名。 </p><p>  角色還具有多重性 (Multiplicity), 表示可以有多少個對象參與該關(guān)聯(lián)。多重性表示參與對象的數(shù)目的上下界限制。 "*" 代表 0 ~∞,可以用一個單個數(shù)字表示,也可以用范圍或者是數(shù)字和范圍不連續(xù)的組合表示。 </p><p>  2.4.

67、1.2.3聚集關(guān)系</p><p>  聚集是一種特殊形式的關(guān)聯(lián)。聚集表示類之間的關(guān)系是整體與部分的關(guān)系。一輛轎車包含四個車輪、一個方向盤、一個發(fā)動機(jī)和一個底盤,這是聚集的一個例子。在需求分析中," 包含 "、" 組成 "、"分為……部分" 等經(jīng)常設(shè)計成聚集關(guān)系。 </p><p>  聚集可以進(jìn)一步劃分成共享聚集和組成。例如:

68、課題組包含許多成員,但是每個成員又可以是另一個課題組的成員,即部分可以參加多個整體,我們稱之為共享聚集。另一種情況是整體擁有各部分,部分與整體共存,如整體不存在了,部分也會隨之消失,這稱為組成。例如:我們打開一個可視窗口 , 它就由標(biāo)題、外框和顯示區(qū)所組成。一旦消亡則各部分同時消失。在 UML 中,聚集表示為空心菱形 , 組成表示為實(shí)心菱形。 </p><p>  2.4.1.2.4泛化關(guān)系</p>

69、<p>  泛化關(guān)系是繼承關(guān)系,是“ is-a-kind-of ”的關(guān)系。人們將具有共同特性的元素抽象成類別,并通過增加其內(nèi)涵而進(jìn)一步分類。例如:動物可分為飛鳥和走獸,人可分為男人和女人。在面向?qū)ο蠓椒ㄖ幸话銓⑶罢叻Q為父元素,將后者稱為子元素。繼承定義了父元素和子元素之間的分類關(guān)系。例如將客戶進(jìn)一步分類成個體客戶和團(tuán)體客戶,使用的就是繼承關(guān)系。 </p><p>  在 UML 定義中對繼承有三個要求

70、: </p><p>  子元素應(yīng)與父元素完全一致,父元素所具有的關(guān)聯(lián)、屬性和操作,子元素也都隱含性地具有;</p><p>  子元素還應(yīng)包含額外信息;</p><p>  允許使用父元素實(shí)例的地方,也應(yīng)能使用子元素 。</p><p>  2.4.1.2.5實(shí)現(xiàn)關(guān)系</p><p>  實(shí)現(xiàn)關(guān)系中的一方(甲方)作為

71、要求被提出,另一方(乙方)具體履行要求中聲明的任務(wù)。類圖中出現(xiàn)得實(shí)現(xiàn)關(guān)系大多表述子系統(tǒng)或類實(shí)現(xiàn)接口。例如,雇傭“家庭保姆”或?qū)⒑⒆铀偷健坝變簣@“都可以完成接口“照顧學(xué)齡前兒童”中規(guī)定得任務(wù)。</p><p>  實(shí)現(xiàn)關(guān)系得表述方式為虛線加上一個空心箭頭,如果甲方是接口,對應(yīng)于接口的兩種表述形式,實(shí)現(xiàn)關(guān)系也有兩種表現(xiàn)形式:簡略的形式和詳細(xì)的形式。</p><p>  2.4.1.3擴(kuò)展機(jī)制&

72、lt;/p><p>  UML本身提供擴(kuò)展機(jī)制,可以擴(kuò)展UML的語義來建立針對特定對象的描述機(jī)制,UML的構(gòu)造型包括:</p><p><b>  構(gòu)造型</b></p><p><b>  約束</b></p><p><b>  特征值</b></p><p

73、><b>  注釋</b></p><p>  圖2-2 擴(kuò)展機(jī)制圖</p><p>  2.4.2 用例圖-----捕獲系統(tǒng)中用戶能夠看見的功能</p><p>  1) 角色 : 任何一個與系統(tǒng)發(fā)生相互作用的事物都可以表現(xiàn)為一個角色。角色可以是人也可以是物。 </p><p>  2) 一個用例定義了一組系統(tǒng)

74、要做的有序的動作序列,并且這個動作序列要產(chǎn)生一個可觀測的結(jié)果,返回給某一個特定的角色。 </p><p>  單個執(zhí)行者可與多個用例聯(lián)系;反過來,一個用例可與多個執(zhí)行者聯(lián)系。對同一個用例而言,不同執(zhí)行者有著不同的作用;他們可以從用例中取值,也可以參與到用例中。 </p><p>  2.4.3 類圖-----捕獲系統(tǒng)的詞匯表</p><p>  1) 類 是具有相同

75、屬性、操作、關(guān)系的對象集合的總稱。通常在 UML 中類被畫成矩形。 </p><p>  2) 類圖: 描述類和類之間的靜態(tài)關(guān)系,在系統(tǒng)的整個生命周期都是有效的。與數(shù)據(jù)模型不同,它不僅顯示了信息的結(jié)構(gòu),同時還描述了系統(tǒng)的行為。類圖是定義其它圖的基礎(chǔ)。在類圖的基礎(chǔ)上,狀態(tài)圖、協(xié)作圖等進(jìn)一步描述了系統(tǒng)其他方面的特性。 </p><p>  3) 名稱 :每個類都必須有一個名字,用來區(qū)分其它的類

76、。類名是一個字符串,稱為簡單名字。 </p><p>  4) 屬性 :是指類的命名的特性,常常代表一個類的取值。類可以有任意多個屬性,也可以沒有屬性??梢灾粚懮蠈傩悦部梢栽趯傩悦蟾项愋蜕踔寥笔∪≈?。根據(jù)圖的詳細(xì)程度,每條屬性可以包括屬性的可見性、屬性名稱、類型、缺省值和約束特性。UML規(guī)定類的屬性的語法為:" 可見性 屬性名: 類型 =缺省值 { 約束特性 }" 。 </p&

77、gt;<p>  常用的可見性有 Public、Private和Protected 三種,在 UML 中分別表示為 "+"、 "-" 和 "#" 。 </p><p>  類型表示該屬性的種類。它可以是基本數(shù)據(jù)類型,例如整數(shù)、實(shí)數(shù)、布爾型等,也可以是用戶自定義的類型。一般它由所涉及的程序設(shè)計語言確定。</p>&l

78、t;p>  約束特性則是用戶對該屬性性質(zhì)一個約束的說明。例如 "{ 只讀 }" 說明該屬性是只讀屬性。 </p><p>  5) 操作 :是類的任意一個實(shí)例對象都可以調(diào)用的,并可能影響該對象行為的實(shí)現(xiàn)。該項可省略。操作用于修改、檢索類的屬性或執(zhí)行某些動作。它們被約束在類的內(nèi)部,只能作用到該類的對象上。 UML 規(guī)定操作的語法為:可見性 操作名 ( 參數(shù)表 ) :返回類型 { 約束特性

79、} 。 </p><p>  6) 約束 :在 UML 中,可以用約束表示規(guī)則。約束是放在括號 "{ }" 中的一個表達(dá)式,表示一個永真的邏輯陳述。 </p><p>  7) 組織屬性和方法 :在畫類圖的時候沒有必要將全部的屬性和操作都畫出來。實(shí)際上,在大部分情況下我們也不可能在一個圖中將類的屬性和操作都畫出來。在畫類圖時可以只將感興趣的屬性和操作畫出來就可以了??梢?/p>

80、用” ... ”表示還有屬性或方法沒有畫出來。 </p><p>  2.5 C/S結(jié)構(gòu)和B/S結(jié)構(gòu)</p><p>  C/S模式主要由客戶應(yīng)用程序(Client)、服務(wù)器管理程序(Server)和中間件(middleware)三個部件組成??蛻魬?yīng)用程序是系統(tǒng)中用戶與數(shù)據(jù)進(jìn)行交互的部件。服務(wù)器程序負(fù)責(zé)有效地管理系統(tǒng)資源,如管理一個信息數(shù)據(jù)庫,其主要工作是當(dāng)多個客戶并發(fā)地請求服務(wù)器上的相同

81、資源時,對這些資源進(jìn)行最優(yōu)化管理。中間件負(fù)責(zé)聯(lián)結(jié)客戶應(yīng)用程序與服務(wù)器管理程序,協(xié)同完成一個作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求?! /S模式是一種以Web技術(shù)為基礎(chǔ)的新型的MIS系統(tǒng)平臺模式。把傳統(tǒng)C/S模式中的服務(wù)器部分分解為一個數(shù)據(jù)服務(wù)器與一個或多個應(yīng)用服務(wù)器(Web服務(wù)器),從而構(gòu)成一個三層結(jié)構(gòu)的客戶服務(wù)器體系?! 〉谝粚涌蛻魴C(jī)是用戶與整個系統(tǒng)的接口。客戶的應(yīng)用程序精簡到一個通用的瀏覽器軟件,如Netscape Navigat

82、or,微軟公司的IE等。瀏覽器將HTML代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁。網(wǎng)頁還具備一定的交互功能,允許用戶在網(wǎng)頁提供的申請表上輸入信息提交給后臺,并提出處理請求。這個后臺就是第二層的Web服務(wù)器。  第二層Web服務(wù)器將啟動相應(yīng)的進(jìn)程來響應(yīng)這一請求,并動態(tài)生成一串HTML代碼,其中嵌入處理的結(jié)</p><p>  2.5.1 B/S模式的優(yōu)勢</p><p>  2.5.1.1它簡化了客戶端&

83、lt;/p><p>  它無需像C/S模式那樣在不同的客戶機(jī)上安裝不同的客戶應(yīng)用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機(jī)的硬盤空間與內(nèi)存,而且使安裝過程更加簡便、網(wǎng)絡(luò)結(jié)構(gòu)更加靈活。假設(shè)一個企業(yè)的決策層要開一個討論庫存問題的會議,他們只需從會議室的計算機(jī)上直接通過瀏覽器查詢數(shù)據(jù),然后顯示給大家看就可以了。甚至與會者還可以把筆記本電腦聯(lián)上會議室的網(wǎng)絡(luò)插口,自己來查詢相關(guān)的數(shù)據(jù)。其次,它簡化了系統(tǒng)的開發(fā)和維

84、護(hù)。系統(tǒng)的開發(fā)者無須再為不同級別的用戶設(shè)計開發(fā)不同的客戶應(yīng)用程序了,只需把所有的功能都實(shí)現(xiàn)在Web服務(wù)器上,并就不同的功能為各個組別的用戶設(shè)置權(quán)限就可以了。各個用戶通過HTTP請求在權(quán)限范圍內(nèi)調(diào)用Web服務(wù)器上不同處理程序,從而完成對數(shù)據(jù)的查詢或修改。現(xiàn)代企業(yè)面臨著日新月異的競爭環(huán)境,對企業(yè)內(nèi)部運(yùn)作機(jī)制的更新與調(diào)整也變得逐漸頻繁。相對于C/S,B/S的維護(hù)具有更大的靈活性。當(dāng)形勢變化時,它無須再為每一個現(xiàn)有的客戶應(yīng)用程序升級,而只需對W

85、eb服務(wù)器上的服務(wù)處理程序進(jìn)行修訂。這樣不但可以提高公司的運(yùn)作效率,還省去了維護(hù)時協(xié)調(diào)工作的不少麻煩。如果一個公司有上千臺客戶機(jī),并且分布在不同的地點(diǎn),那么便于維護(hù)</p><p>  2.5.1.2 它使用戶的操作變得更簡單</p><p>  對于C/S模式,客戶應(yīng)用程序有自己特定的規(guī)格,使用者需要接受專門培訓(xùn)。而采用B/S模式時,客戶端只是一個簡單易用的瀏覽器軟件。無論是決策層還是操

86、作層的人員都無需培訓(xùn),就可以直接使用。B/S模式的這種特性,還使MIS系統(tǒng)維護(hù)的限制因素更少。</p><p>  2.5.1.3 B/S特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的MIS的功能有所擴(kuò)展</p><p>  這是C/S所無法實(shí)現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所必需的。這使得企業(yè)的大部分書面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡化,節(jié)省人力物力

87、。</p><p>  鑒于B/S相對于C/S的先進(jìn)性,B/S逐漸成為一種流行的MIS系統(tǒng)平臺。各軟件公司紛紛推出自己的Internet方案,基于Web的財務(wù)系統(tǒng)、基于Web的ERP。一些企業(yè)已經(jīng)領(lǐng)先一步開始使用它,并且收到了一定的成效。</p><p>  B/S模式的新穎與流行,和在某些方面相對于C/S的巨大改進(jìn),使B/S成了MIS系統(tǒng)平臺的首選,也使人忽略了B/S不成熟的一面,以及C

88、/S所固有的一些優(yōu)點(diǎn)。下面讓我們來看C/S相對于B/S的一些優(yōu)勢。</p><p>  2.5.2 C/S模式的優(yōu)勢</p><p>  2.5.2.1交互性強(qiáng)是C/S固有的一個優(yōu)點(diǎn)</p><p>  在C/S中,客戶端有一套完整的應(yīng)用程序,在出錯提示、在線幫助等方面都有強(qiáng)大的功能,并且可以在子程序間自由切換。B/S雖然由JavaScript、VBScript提供

89、了一定的交互能力,但與C/S的一整套客戶應(yīng)用相比是太有限了。</p><p>  2.5.2.2 C/S模式提供了更安全的存取模式</p><p>  由于C/S是配對的點(diǎn)對點(diǎn)的結(jié)構(gòu)模式,采用適用于局域網(wǎng)、安全性比較好的網(wǎng)絡(luò)協(xié)議(例如:NT的NetBEUI協(xié)議),安全性可以得到較好的保證。而B/S采用點(diǎn)對多點(diǎn)、多點(diǎn)對多點(diǎn)這種開放的結(jié)構(gòu)模式,并采用TCP/IP這一類運(yùn)用于Internet的開

90、放性協(xié)議,其安全性只能靠數(shù)據(jù)服務(wù)器上管理密碼的數(shù)據(jù)庫來保證。現(xiàn)代企業(yè)需要有開放的信息環(huán)境,需要加強(qiáng)與外界的聯(lián)系,有的還需要通過Internet發(fā)展網(wǎng)上營銷業(yè)務(wù),這使得大多數(shù)企業(yè)將他們的內(nèi)部網(wǎng)與Internet相連。由于采用TCP/IP,他們必須采用一系列的安全措施,如構(gòu)筑防火墻,來防止Internet的用戶對企業(yè)內(nèi)部信息的竊取以及外界病毒的侵入。</p><p>  2.5.2.3采用C/S模式將降低網(wǎng)絡(luò)通信量&

91、lt;/p><p>  B/S采用了邏輯上的三層結(jié)構(gòu),而在物理上的網(wǎng)絡(luò)結(jié)構(gòu)仍然是原來的以太網(wǎng)或環(huán)形網(wǎng)。這樣,第一層與第二層結(jié)構(gòu)之間的通信、第二層與第三層結(jié)構(gòu)之間的通信都需占用同一條網(wǎng)絡(luò)線路。而C/S只有兩層結(jié)構(gòu),網(wǎng)絡(luò)通信量只包括Client與Server之間的通信量。所以,C/S處理大量信息的能力是B/S所無法比擬的。</p><p>  2.5.2.4 由于C/S在邏輯結(jié)構(gòu)上比B/S少一層,

92、對于相同的任務(wù),C/S完成的速度總比B/S快。使得C/S更利于處理大量數(shù)據(jù)。</p><p>  B/S模式的先進(jìn)性和C/S模式的成熟性使人在現(xiàn)代企業(yè)MIS系統(tǒng)平臺的選擇上難定取舍。究竟應(yīng)該選擇哪種模式呢,有沒有兩種平臺相結(jié)合的模式呢?</p><p>  2.5.3 C/S模式與B/S模式相結(jié)合方案  </p><p>  系統(tǒng)分析員可以根據(jù)系統(tǒng)的特點(diǎn),靈活地為不

93、同的子功能采用不同的MIS系統(tǒng)平臺,將兩種模式交叉并行使用。</p><p>  首先,開發(fā)者根據(jù)一定的原則,將系統(tǒng)的所有子功能分類,決定哪些子功能適合采用C/S,哪些適合采用B/S。適合采用C/S的子功能應(yīng)具備以下特點(diǎn):1)安全性要求高;2)要求具有較強(qiáng)的交互性;3)使用范圍小,地點(diǎn)固定;4)要求處理大量數(shù)據(jù)。例如,倉庫管理系統(tǒng)中的入庫單、領(lǐng)料單的輸入功能,財務(wù)系統(tǒng)中的憑證輸入功能等等。而適合采用B/S的子功能

94、應(yīng)具備以下特點(diǎn):1)使用范圍廣,地點(diǎn)靈活;2)功能變動頻繁;3)安全性、交互性要求不同。例如:企業(yè)內(nèi)部信息發(fā)布功能,意見箱輸入功能,公司財務(wù)分析表的查詢功能,總裁決策支持系統(tǒng)中的查詢功能等等。</p><p>  相對于單獨(dú)采用C/S或B/S,這種方案的優(yōu)點(diǎn)在于:1)保證敏感數(shù)據(jù)的安全性,特別是對數(shù)據(jù)庫的修改和新增記錄加強(qiáng)了控制;2)經(jīng)濟(jì)有效地利用企業(yè)內(nèi)部計算機(jī)的資源,簡化了一部分可以簡化的客戶端;3)既保證了復(fù)

95、雜功能的交互性,又保證了一般功能的易用與統(tǒng)一;4)系統(tǒng)維護(hù)簡便,布局合理;5)網(wǎng)絡(luò)效率最高。</p><p>  如果系統(tǒng)開發(fā)者在系統(tǒng)設(shè)計階段決定采用這種C/S與B/S相結(jié)合的模式,那么在系統(tǒng)開發(fā)生命周期的如下各個階段相對這種新模式都應(yīng)有所響應(yīng)。</p><p>  在系統(tǒng)設(shè)計階段主要考慮的是MIS系統(tǒng)平臺選擇問題。在詳細(xì)設(shè)計階段,系統(tǒng)開發(fā)者需要根據(jù)企業(yè)自身的業(yè)務(wù)特點(diǎn),以及一定的選擇原則,

96、來決定各個子功能采用哪一種模式并在系統(tǒng)說明書上分別注明。在編碼設(shè)計階段,系統(tǒng)開發(fā)者需要針對采用不同模式的子功能,選用不同的編碼方式(例如:C/S可以采用Java編程環(huán)境,而B/S采用JSP方法),然后編譯生成不同的客戶應(yīng)用及Web服務(wù)程序。在安裝調(diào)試階段,其特點(diǎn)主要體現(xiàn)在系統(tǒng)的物理結(jié)構(gòu)上,即特定的客戶應(yīng)用程序?qū)⒈话惭b在特定的使用者的客戶端上,Web服務(wù)程序需要被安裝在Web服務(wù)器上,而每個客戶端上都將被安裝上瀏覽器,同時,客戶應(yīng)用的使用

97、者必須接受一定的培訓(xùn)。在軟件維護(hù)階段,針對不同模式的子功能應(yīng)采取不同維護(hù)方式。 </p><p><b>  3 系統(tǒng)分析設(shè)計</b></p><p>  3.1 系統(tǒng)需求分析 </p><p>  3.1.1 系統(tǒng)調(diào)查 </p><p>  21世紀(jì)以來,人類經(jīng)濟(jì)高速發(fā)展,人們發(fā)生了日新月異的變化,特別是計算

98、機(jī)的應(yīng)用及普及到經(jīng)濟(jì)和社會生活的各個領(lǐng)域;使得原本的舊的管理方法越來越不適應(yīng)現(xiàn)在社會的發(fā)展。但許多人還停留在以前的手工操作,這大大地阻礙了人類經(jīng)濟(jì)的發(fā)展。為了適應(yīng)現(xiàn)代社會人們高度強(qiáng)烈的時間觀念,基于網(wǎng)絡(luò)環(huán)境的學(xué)生管理系統(tǒng)的開發(fā)勢在必行。本系統(tǒng)采用Servlet+JSP+JavaBean+MySQL 設(shè)計方式,其中Servlet擔(dān)當(dāng)主要邏輯控制,通過接受JSP傳來的用戶請求,調(diào)用以及初始化JavaBean,在通過JSP傳到客戶端,本系統(tǒng)中

99、SQLBean擔(dān)當(dāng)主要的與數(shù)據(jù)庫的連接與通信,JavaBean在本系統(tǒng)中主要擔(dān)當(dāng)配合JSP以及Servlet來完成用戶的請求,而JSP主要擔(dān)當(dāng)接受與響應(yīng)客戶端。</p><p>  3.1.2 系統(tǒng)需求說明</p><p>  (1) 要求系統(tǒng)可以準(zhǔn)確地記錄和查詢學(xué)生信息,包括學(xué)生的學(xué)號(唯一)、姓名、所屬班級、院系、年齡、性別等。</p><p>  (2)要求系

100、統(tǒng)可以準(zhǔn)確地記錄和查詢教師信息,包括教師的代號(唯一)、姓名、職稱、所屬院系等。</p><p> ?。?)要求系統(tǒng)可以準(zhǔn)確地記錄和查詢課程信息,包括課程的課程號、課程名、學(xué)分、所屬院系等。</p><p> ?。?)要求系統(tǒng)可以準(zhǔn)確地記錄和查詢管理員信息,包括管理員的帳號、姓名、所屬院系等。</p><p>  (5) 要求系統(tǒng)可以準(zhǔn)確地記錄學(xué)生的每一次獎懲情況以

101、及學(xué)籍變動情況。</p><p>  (6) 系統(tǒng)可以對學(xué)校的院系、班級情況進(jìn)行管理。</p><p>  (7) 系統(tǒng)應(yīng)該可以對基礎(chǔ)數(shù)據(jù)進(jìn)行維護(hù),主要包括數(shù)據(jù)庫信息的添加、修改和刪除。</p><p>  (8) 系統(tǒng)應(yīng)該有一個較好的容錯性、圖形用戶界面和跨平臺性。</p><p>  (9) 系統(tǒng)應(yīng)該有很好的可擴(kuò)展性。</p>

102、<p>  3.1.3 用戶需求 </p><p>  學(xué)生:對各科成績的查詢,修改登錄密碼。</p><p>  教師:輸入所教授科目的學(xué)生成績,修改登錄密碼。</p><p>  管理員:輸入并維護(hù)學(xué)生、教師、課程等的基本信息。查看、修改、添加學(xué)生的獎勵、處罰、學(xué)籍變動等信息以及學(xué)生各科的成績。根據(jù)權(quán)限分為全局管理員和院系管理員,全局管理員處理上述

103、操作外,還可以制定、修改獎勵、處罰的標(biāo)準(zhǔn)以及學(xué)籍變動的形式,對院系管理員的基本信息進(jìn)行維護(hù),添加、刪除、調(diào)整教學(xué)安排等,在整個系統(tǒng)中擁有最高權(quán)限。</p><p>  3.2 總體設(shè)計框架[13]</p><p>  圖3-1 總體設(shè)計圖</p><p><b>  3.3 UML建模</b></p><p>  3.

104、3.1 學(xué)生管理系統(tǒng)的用例分析</p><p>  學(xué)生管理信息系統(tǒng)的全部用例包括記錄學(xué)生情況、修改學(xué)生信息的學(xué)生基本信息模塊,記錄教師情況、修改教師信息的教師基本信息模塊,記錄管理員情況、修改管理員信息的管理員基本信息模塊,記錄學(xué)生獎懲情況、修改學(xué)生獎懲情況的學(xué)生獎懲模塊,記錄學(xué)生學(xué)籍變動情況、修改學(xué)生學(xué)籍變動情況的學(xué)籍變動模塊,記錄課程情況、修改課程情況的課程管理模塊,記錄教學(xué)安排、修改教學(xué)安排的教學(xué)管理模塊

105、,記錄學(xué)生成績、修改學(xué)生成績、查詢學(xué)生成績的成績管理模塊以及設(shè)置班級情況的班級模塊,設(shè)置獎懲學(xué)籍變動標(biāo)準(zhǔn)的模塊和設(shè)置院系情況的院系模塊。這里,使用Eclipse的MyEclipse插件中的UML建模。系統(tǒng)用例圖如下(圖3-2):</p><p>  圖3-2 系統(tǒng)用例圖</p><p>  3.3.2 學(xué)生管理系統(tǒng)的領(lǐng)域分析</p><p>  UML建模的第二步

106、就是領(lǐng)域分析。實(shí)際開發(fā)學(xué)生管理信息系統(tǒng)時,領(lǐng)域分析是建立在用例分析基礎(chǔ)上的,要了解系統(tǒng)要處理的概念。學(xué)生管理信息系統(tǒng)中的域主要包括:學(xué)生信息、學(xué)院信息、班級信息、獎懲學(xué)籍變動信息、教師信息、課程信息和數(shù)據(jù)字典??梢栽陬悎D中將上面這些域以及它們之間的關(guān)系表示出來。圖3-3 不僅給出了各個域間的關(guān)系還描述了各個域的名稱、各項屬性和操作。</p><p>  圖3-3 系統(tǒng)類圖</p><p>

107、;  3.3.3 學(xué)生管理系統(tǒng)的設(shè)計</p><p>  在設(shè)計階段,首先要設(shè)計類的狀態(tài)圖。不是所有的類都有狀態(tài)圖。有些類可以用UML狀態(tài)圖來顯示類的對象的不同狀態(tài)以及改變狀態(tài)的事件。在本系統(tǒng)中有狀態(tài)圖的類只有學(xué)生信息。</p><p>  圖3-4 學(xué)生狀態(tài)圖</p><p>  設(shè)計階段的最后是設(shè)計UML模型,也就是將前面設(shè)計的模型進(jìn)行擴(kuò)展和細(xì)化。為了描述域類

108、的動態(tài)行為,可以使用UML的時序圖、協(xié)作圖或者活動圖。這里,選用時序圖;時序圖的基礎(chǔ)是用例。在時序圖中,要說明域類是如何協(xié)作以操作系統(tǒng)中的用例。當(dāng)然,在建立時序圖時,將會發(fā)現(xiàn)新的操作,并將其加入類中,將在后面看到所建立的時序圖模型。此外,操作僅僅是草案,同樣也要用說明詳細(xì)描述。分析的目的是對要建立的系統(tǒng)有更好的了解,而不是要設(shè)計一個完整詳細(xì)的學(xué)生管理信息系統(tǒng)的設(shè)計方案。</p><p>  用戶(學(xué)生)登錄的時序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論