留學(xué)生管理軟件系統(tǒng)JAVA論文(初稿)_第1頁
留學(xué)生管理軟件系統(tǒng)JAVA論文(初稿)_第2頁
留學(xué)生管理軟件系統(tǒng)JAVA論文(初稿)_第3頁
留學(xué)生管理軟件系統(tǒng)JAVA論文(初稿)_第4頁
留學(xué)生管理軟件系統(tǒng)JAVA論文(初稿)_第5頁
已閱讀5頁,還剩47頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、北方軟件學(xué)院軟件工程5233107200502331237王兵鄭鳳仁留學(xué)生管理軟件院 系 專 業(yè) 班 級 學(xué) 號 姓 名 指導(dǎo)教師 負責(zé)教師沈陽航空工業(yè)學(xué)院2007年6月兒年前,各個學(xué)校的學(xué)生信息管理基本上都是靠手工進行,隨著學(xué)校的規(guī)模增大, 有關(guān)學(xué)牛信息管理工作所涉及的數(shù)據(jù)量越來越大,有的學(xué)校不得不靠增加人力、物力來 進行學(xué)生信息管理。但手工管理具有效率底、易出錯、檢索信息慢、對學(xué)校的管理提供 決策信息較為困難等缺點。因此,使用效率更高的方式來處理這些數(shù)據(jù)就更顯得重要了。 木文就該系統(tǒng)進行分析和整體的介紹,并介紹了使用java + sql server 2000技術(shù)開 發(fā)該系統(tǒng)的相關(guān)模塊的整

2、個過程。該系統(tǒng)主要利用了 java強大的數(shù)據(jù)庫訪問技術(shù),與 sql server 2000的強大的數(shù)據(jù)庫功能來實現(xiàn)主要功能。系統(tǒng)設(shè)計并實現(xiàn)了學(xué)生信息管 理,學(xué)生是否在校管理,學(xué)生類別(長期生,短期生)管理,管理員后臺管理的功能。論文主要介紹了本課題的開發(fā)背景、系統(tǒng)分析、數(shù)據(jù)庫設(shè)計和系統(tǒng)的設(shè)計與實現(xiàn)。關(guān)鍵詞 java ; swt/jface; sql server 2000;招生管理,轉(zhuǎn)在學(xué)管理;在學(xué) 管理,統(tǒng)計查詢,系統(tǒng)維護abstracta few years ago, all school students are basically information management manu

3、al, with the increasing size of the school, the student information management involved in the growing volume of data, and some schools have had to increase manpower, and resources for student information management. however, the efficiency of manual management end, error-prone, slow retrieval of in

4、formation, the management of schools to provide information for decision-making more difficult, and other shortcomings. therefore, the use of more efficient ways to handle these data is even more important. in this paper, an analysis of this system and the overall presentation, and introduced the us

5、e of java + sql server 2000 technical development of the system of the entire module cheng. the system is mainly used by the powerful java database access technology. sql server 2000 with a powerful database functions to achieve its main functions- system design and implementation of information man

6、agement students, students in school management and student category (long-term health, short-term) management, administrators background management functions.this paper presents the development of the background issues, systems analysis, database design and system design and implementation.key word

7、s: java; sql server 2000; tickets reservation online;dining reservation online; flight tracker摘要ii第1章緒論5l1課題背景51.2 木課題的研究意義51.3 相關(guān)技術(shù)介紹51.3.1 客戶端/服務(wù)器模型61.3.2 java技術(shù)的介紹 61.3.3 sql server2000 介紹 8第2章系統(tǒng)分析92.1 系統(tǒng)的可行性研究92.2 系統(tǒng)需求分析92.2.1 用戶需求分析92.2.2 系統(tǒng)設(shè)計目標(biāo)分析92.3 系統(tǒng)功能模塊介紹102. 3. 1招生管理模塊介紹102.3.2 轉(zhuǎn)在學(xué)管理模塊介紹

8、10233在學(xué)管理模塊介紹102.3.4 統(tǒng)計查詢管理模塊介紹102.3.5 系統(tǒng)管理模塊介紹102.4 小結(jié)11第3章數(shù)據(jù)庫設(shè)計113.1 數(shù)據(jù)庫的需求分析113.2 后臺數(shù)據(jù)庫的配置113.3 數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計123.4 er模型13第4章 系統(tǒng)詳細設(shè)計與實現(xiàn)164系統(tǒng)工作原理介紹164.2 系統(tǒng)數(shù)據(jù)流圖164.3 系統(tǒng)的實現(xiàn)算法204.3學(xué)生信息初始化算法 204.3.2修改學(xué)生信息管理算法214.3.3修改個人信息算法224.3.4國家、專業(yè)信息算法 224.3.5學(xué)生信息算法234.3.6轉(zhuǎn)在學(xué)算法錯誤!未定義書簽。4.3.7在學(xué)管理算法錯誤!未定義書簽。4.3.8統(tǒng)計查詢算法錯誤!

9、未定義書簽。4.4前端頁面的設(shè)計與實現(xiàn)244.4.1系統(tǒng)公用類244.4.2用戶登錄頁面264.4.3系統(tǒng)主頁面324.4.4招生管理頁面344.4.5轉(zhuǎn)在學(xué)管理頁面354.4.6在學(xué)管理頁面374.4.7統(tǒng)計查詢頁面394.4.8用戶管理頁面404.4.9國家管理頁面414.4.10專業(yè)管理頁面錯誤!未定義書簽。第5章結(jié)束語42第6章參考文獻43第7章致謝43第8章附錄45沈陽航空工業(yè)學(xué)院畢業(yè)設(shè)計(論文)1.1課題背景現(xiàn)在我國的大中專院校的學(xué)生信息管理水平普遍不高,有的還停留在紙介質(zhì) 基礎(chǔ)上,這種管理手段已不能適應(yīng)時代的發(fā)展,因為它浪費了了許多的人力和物 力。在當(dāng)今信息時代這種傳統(tǒng)的管理方法

10、必然被計算機為基礎(chǔ)的信息管理系統(tǒng)所 代替。如果本系統(tǒng)能被學(xué)校所采用,將會改變以前靠手工管理學(xué)生信息的狀況, 可以樹立良好的辦學(xué)形象,提高工作效率。1.2本課題的研究意義建立學(xué)生信息管理系統(tǒng),采用計算機對學(xué)生信息進行管理,進一步提高辦學(xué) 效益和現(xiàn)代化水平。幫助廣大招生工作人員提高工作效率,實現(xiàn)學(xué)生信息信息管 理工作流程的系統(tǒng)化、規(guī)范化和自動化。本論文就是為了實現(xiàn)這些想法而設(shè)計的。其研究意義有以下幾點:(1) 招生管理功能:主要是根據(jù)申請表進行錄入、修改、刪除。并打印申請 人的資料(此模塊是留學(xué)申請,申請不一定等于到時候人來上學(xué),故分為招生庫 和在學(xué)庫。在學(xué)庫主要是記錄在上學(xué)的學(xué)生)。(2) 轉(zhuǎn)在

11、學(xué)管功能:主要是從招生庫屮的記錄轉(zhuǎn)到在學(xué)庫屮,由于申請人 不一定都來,所以要有此功能。訃用戶從招生庫中選取有來的申請人中,轉(zhuǎn)入在 學(xué)庫;(3) 在學(xué)管理功能:管理在學(xué)校學(xué)習(xí)的學(xué)生。(4) 統(tǒng)計查詢功能:根據(jù)國家、專業(yè)、性別等進行統(tǒng)計、查詢。(5) 系統(tǒng)維護功能:主要包括國家?guī)?、專業(yè)庫、用戶的維護??傊菊n題的研究為高校提高工作效率,實現(xiàn)學(xué)生信息信息管理工作流程 的系統(tǒng)化、規(guī)范化和自動化成為了可能。并且提供了實現(xiàn)方法。1.3相關(guān)技術(shù)介紹本系統(tǒng)采用java+swt/jface+sql2000設(shè)計方式,其中java擔(dān)當(dāng)主耍 邏輯控制,swt/jface承擔(dān)界而設(shè)計,本系統(tǒng)中dbmanager,db

12、util擔(dān)當(dāng)主要的沈陽航空工業(yè)學(xué)院畢業(yè)設(shè)計(論文)與數(shù)據(jù)庫的連接與通信,javabean(bussiness)在本系統(tǒng)中主要擔(dān)當(dāng)業(yè)務(wù)邏輯 控制,swt/jface主要承擔(dān)界面顯示和用戶數(shù)據(jù)收集與顯示。1.3.1客戶端/服務(wù)器模型c/s (client/server,客戶機/服務(wù)器)模式又稱c/s結(jié)構(gòu),是軟件系統(tǒng)體系結(jié) 構(gòu)的一種。c/s模式簡單地講就是基于企業(yè)內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng)。與b/s (browser/server,瀏覽器/服務(wù)器)模式相比,c/s模式的應(yīng)用系統(tǒng)最大的好 處是不依賴企業(yè)外網(wǎng)環(huán)境,即無論企業(yè)是否能夠上網(wǎng),都不影響應(yīng)用1.3.2。java技術(shù)的介紹j3v3是因為撰寫c+語言程序時

13、的困難而研制開的,起先,只是一個消費性 電子產(chǎn)甜大計劃中的一部份,c+語言是當(dāng)初被考慮采用的,但從一開始的編譯 問題一直到最后的一連串問題迫使得放棄c+語言,而有java語言的產(chǎn)生。sun 是要java成為一個簡 單(simple)、而向?qū)ο蟮?object oriented) 分布式的 (distributed)、解釋的(interpreted)、健壯的(robust)、安全的(secure)、結(jié) 構(gòu)中立的(architecture neutral) 可移植的(portable) 高效能的(high performance)、多線程的(multithreaded)、動態(tài)的(dynamic)的

14、程序語言(摘譯 自 thcjava language: a white paper, 1995)在sun的java語言口皮書中明口地說明上述java語言的技巧。若以木工為 比喻,一個而向?qū)﹀璧哪竟?,?她)最主要的重點是即將要做的木椅子,其次 才是所需要的工具;反z; 個以非面向?qū)﹀璧哪竟?,?她)所關(guān)心的只是工 具。最近的即插即用(plug and play)亦是面向?qū)ο笤O(shè)計的重點。分布式的 (distributed): java有一個很周全的程薪錄java介紹。swt/jface 介紹基于java的圖形庫最主要的有三種,它們分別是swing. awt和swto其 中前兩個是sun隨jdk起

15、發(fā)布的,而swt則是由ibm領(lǐng)導(dǎo)的開源項目(現(xiàn)在已 經(jīng)脫離ibm t) eclipse的一個子項目。swt的執(zhí)行效率非常高。這是由于swt 的底層是由c編寫的。由于swt通過c直接調(diào)用系統(tǒng)層的gui ape因此,使用swt編寫gui程序,在外觀上就和使用c+、delphi (在windows下)編寫的程 序完全一樣。它的這一點和awt類似。awt在底層也是使用c直接調(diào)用系統(tǒng)層的 gui api。但它們是有區(qū)別的,最大的區(qū)別可能就是一個是sun提供的,一個是 eclipse自帶的。這就意味著如果使用awt,只要機器上安裝了 jdk或jre,發(fā) 布軟件時無需帶其它的庫。而如何使用swt,在發(fā)布時必

16、須要自帶上swt的*dll (windows版)或*. so(linux/unix版)文件以及相關(guān)的*. jar包。還有就是它們 所提供的圖形接口有一些差異。swt可能更豐富一些,我們可以看看eclipse的 界面就知道了。但隨著sun對awt庫的不斷更新,awt的圖形表現(xiàn)能力也在不斷 地提高。雖然swt很強大,但它比較底層。也就是說它的一些功能在使用上還比較低 級,不太符合面向?qū)﹀璧奶卣鳌R虼?,在swt的基礎(chǔ)上又開發(fā)了 jfacco jface 在swt上進行了一定的擴展。因此,也可說jface是基于swt的,就象在uc中 使用mfc來包裝win32 api 一樣。java技術(shù)難點為了使程序

17、在具有安全性、完整性、健壯性的同時,可以方便地移植,采用 jdbc連接數(shù)據(jù)庫更合適一些。jdbc是一種可用于執(zhí)行sql語句的java api, 它由一些j3v3語言寫的類、界面組成,使開發(fā)人員可以用純ja眩語言編寫完整 的數(shù)據(jù)庫應(yīng)用程序。通過使用jdbc,可以很方便地將sql語句傳送到幾乎任何 一種數(shù)據(jù)庫。也就是說,可以不必寫一個程序訪問sybase,寫另一個程序訪問 oracle,再寫一個程序訪問microsoft的sql server。用jdbc寫的程序能夠 自動地將sql語句傳送給相應(yīng)的數(shù)據(jù)庫管理系統(tǒng)。在本地數(shù)據(jù)庫程序使用microsoft的access等數(shù)據(jù)庫時,可以使用sun公司 開

18、發(fā)的jdbc-odbc橋,借用此技術(shù)java程序就可以訪問帶有odbc驅(qū)動程序的數(shù) 據(jù)庫。這樣既保留jdbc的優(yōu)點,又可以使用microsoft提供的odbc數(shù)據(jù)源與 access連接。不管對方是何種數(shù)據(jù)庫,只要有odbc接口就可以直接使用 jdbc-odbc橋與數(shù)據(jù)庫連接,而無需因為后端數(shù)據(jù)庫的改變而改動相應(yīng)的程序代 碼,實現(xiàn)了應(yīng)用層與數(shù)據(jù)庫層的完美分離。如果需要變后端數(shù)據(jù)庫為sql server 2000,只需在odbc數(shù)據(jù)源屮安裝相應(yīng)的驅(qū)動程序z后,就可以直接連接并使用 sql server 2000 的數(shù)據(jù)庫了。1.3.3 sql server2000 介紹sql server是一個關(guān)

19、系數(shù)據(jù)庫管理系統(tǒng)它最初是由microsoft sybase和 ashton-tate三家公司共同開發(fā)的于1988年推出了第一個os/2版本在windows nt推出后microsoft與sybase在sql server的開發(fā)上就分道揚熊了 microsoft將sql server移植到windows nt系統(tǒng)上專注于開發(fā)推廣sql server 的windows nt版本sybase則較專注于sql server在unix操作系統(tǒng)上的應(yīng)用 在本書中介紹的是microsoft sql server以后簡稱為sql server或ms sql serversql server 2000是micr

20、osoft公司推出的sql server數(shù)據(jù)庫管理系統(tǒng)的 最新版本該版本繼承了 sql server 7.0版本的優(yōu)點同時又比它增加了許多更先 進的功能具有使用方便可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點可跨越從運行 microsoft windows 98 的膝上型電腦到運行 microsoft windows 2000 的大型 多處理器的服務(wù)器等多種平臺使用。sql server 2000做為一個杰岀的數(shù)據(jù)庫平臺可用于大型聯(lián)機事務(wù)處理數(shù)據(jù) 倉庫以及電子商務(wù)。它的新特性如下:sql server 2000引進了數(shù)據(jù)庫和服務(wù)器增強功能以及其它一些新的特 性。1. xml extensible ma

21、rkup language 擴展標(biāo)示語言支持2. 新數(shù)據(jù)類型new data types3. 數(shù)據(jù)行中的text類型數(shù)據(jù)4. 用戶自定義函數(shù) user-defined functions5. 索引index增強6. 全文檢索full-text search增強7. 索引化視圖indexed views8. 分布式查詢 distributed query9. 觸發(fā)器類型 instead of and after triggers10. 級聯(lián)參考完整性約束 cascading referential integrity constraints11. collation 增進sql server 2

22、000還支持在同一計算機上同時運行多個關(guān)系數(shù)據(jù)庫實例每個 實例有其獨立的系統(tǒng)和用戶數(shù)據(jù)庫集合應(yīng)用程序采用與連接不同計算機上的 sql server實例大致相同的方式連接同一計算機上的各個實例。第2章系統(tǒng)分析2.1系統(tǒng)的可行性研究留學(xué)生管理系統(tǒng)是通過圖形界而使教師管理管理學(xué)生信息,此系統(tǒng)在技術(shù)方 面主要是采用現(xiàn)有的軟件designer插件、eclipse、sql server 2000進行開發(fā) 和研究的,這些軟件早已被廣大用戶熟悉和了解。該留學(xué)生管理系統(tǒng),它具有以下特點: 實用性:為教師與后臺管理人員提供了不同的功能; 操作簡單:本系統(tǒng)適用于不同的使用者,只要會簡單的輸入就可以方便 的得到需要的

23、信息與選擇需要的內(nèi)容,操作簡單易行。 代碼可讀性好:文屮的代碼都是利用java語言進行編寫,簡潔易懂。本系統(tǒng)有效的實現(xiàn)了留學(xué)生管理系統(tǒng)的功能。從各方面的初步調(diào)查基礎(chǔ)上,可以得出結(jié)論:開發(fā)該系統(tǒng)對于幫助廣大教師 提高工作效率,實現(xiàn)學(xué)生信息管理工作流程的系統(tǒng)化、規(guī)范化和自動化是有很大 的幫助。2. 2系統(tǒng)需求分析2. 2.1用戶需求分析隨著高學(xué)學(xué)生的增多,師資力量的擴大,學(xué)樣課程的增加,對教師與學(xué)生的 要求也越來越高,而如何有效的管理學(xué)生信息相關(guān)的資源,就成為了各高??紤] 的一個重要方面。為此,我們設(shè)計了本留學(xué)生管理系統(tǒng),為老師提供了完善的學(xué)生信息管理功2. 2.2系統(tǒng)設(shè)計目標(biāo)分析留學(xué)生管理系統(tǒng)主

24、要提供了登陸模塊,招生管理,轉(zhuǎn)在學(xué)管理,在學(xué)管理,統(tǒng)計 查詢,系統(tǒng)維護,四部分組成。,其主要功能如下:根據(jù)用權(quán)限用戶登錄木系統(tǒng)。招生管理中,教師可以選擇學(xué)生類型,錄入學(xué)生信息。轉(zhuǎn)在學(xué)管理,將意向?qū)W生轉(zhuǎn)換為在學(xué)學(xué)生。在學(xué)管理,錄入學(xué)生信息。統(tǒng)計查詢,根據(jù)學(xué)生類型,學(xué)生類別查詢學(xué)生信息。系統(tǒng)維護,對專業(yè)模塊,國別模塊進行管理。2. 3系統(tǒng)功能模塊介紹在系統(tǒng)分析的基礎(chǔ)上,結(jié)合實際情況,此模塊共分為三層結(jié)構(gòu),各結(jié)構(gòu)之間 緊密相連,共同構(gòu)建了留學(xué)生管理系統(tǒng)。2. 3. 1招生管理模塊介紹教師登陸以后,可以選擇學(xué)生類型,錄入學(xué)生信息一系統(tǒng)首先會查詢出所有的學(xué)生,可以根據(jù)按鈕功能翻動。二可以查看學(xué)生的詳細信

25、息和報表,可以對學(xué)生進行增,刪,查,改操作2. 3. 2轉(zhuǎn)在學(xué)管理模塊介紹教師在本系統(tǒng)中擁有是否接受學(xué)生為正式學(xué)生的權(quán)限,只有先接受學(xué)生 預(yù)報名,才能將學(xué)生進行轉(zhuǎn)在學(xué)動作。一.系統(tǒng)要求學(xué)生必須為意向?qū)W生,才能進行轉(zhuǎn)在學(xué)管理操作。2. 3. 3在學(xué)管理模塊介紹可以對在學(xué)的學(xué)生信息進行增,刪,查,改動作。學(xué)生只有是本校的在 讀學(xué)生才可以進行改操作。功能同招生管理模塊。2. 3. 4統(tǒng)計查詢管理模塊介紹對意向?qū)W生,在校學(xué)生根據(jù)國家、專業(yè)、性別等進行統(tǒng)計、查詢。2. 3. 5系統(tǒng)維護管理模塊介紹主要包括國家?guī)?、專業(yè)庫、用戶的維護。2.4小結(jié)本章主要分析系統(tǒng)的各個組成部分,并給出了具體的邏輯設(shè)計。學(xué)生

26、模塊主要是介紹了學(xué)生可用的功能如招生管理、轉(zhuǎn)在學(xué)管理、在學(xué)管理等。 招生管理模塊主要描述了主要是根據(jù)中請表進行錄入、修改、刪除。(此模 塊是留學(xué)申請,申請不一定等于到時候人來上學(xué),故分為招生庫和在學(xué)庫。 在學(xué)庫主要是記錄在上學(xué)的學(xué)牛)等。而統(tǒng)計查詢模塊,則主要介紹了根 據(jù)國家、專業(yè)、性別等進行統(tǒng)計、查詢的功能。該章主要是以全局的整體 的角度描述整個系統(tǒng)的功能和框架,它所涉及的理論分析和設(shè)計為后面的 算法設(shè)計和實現(xiàn)打下基礎(chǔ)。第3章數(shù)據(jù)庫設(shè)計3.1數(shù)據(jù)庫的需求分析根據(jù)系統(tǒng)需求,可以列出以下數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):長期生表:包括登記號、洲別、姓名等;短期生表:包括登記號、相片所存的路徑;招生表:包括用戶名

27、稱、用戶密碼、用戶權(quán)限;國家表:包括國家代碼、國家所在州、國家名稱;用戶表:包括登記號、相片所存的路徑;專業(yè)表:包括專業(yè)代碼、專業(yè)名稱等;3.2后臺數(shù)據(jù)庫的配置本系統(tǒng)的開發(fā)是在windows系統(tǒng)下開發(fā)的,開發(fā)數(shù)據(jù)庫使用的是sql server 2000o具體配置步驟如下:使用sql server 2000自帶的企業(yè)管理器,新建數(shù)據(jù)庫sam。在sam庫中建表:長期生表changqisheng,短期生表duanqisheng,招生表 zhaosheng,用戶yonghu國家表guojia、專業(yè)表zhuanyeo在建表的同時, 將表中各字段與域值添加進去。由于考慮到程序移植的問題,所以本系統(tǒng)利用jd

28、bc來連接數(shù)據(jù)庫。具體的表結(jié)構(gòu)設(shè)計如下描述所示。3. 3數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計如以下齊表所示:表3. ichangqi sheng表(長期生表)明xh號 學(xué)djhzb.木igt5別 國*m -xi-名 姓ywxbrp-s一 c木ik xt lhr1rp zy re-x n -rlr別 類 生 學(xué)別類 據(jù) 數(shù)明 說血 tx yjthzzlm zh hsi!-ajgbz表 3. 2 duanqi sheng 表(短期表)字段名稱數(shù)據(jù)類型說明djh文本登記號file備注相片所存的路徑表 3. 3 zhaosheng (招生表)字段名稱數(shù)據(jù)類型說明yhmc文本用戶名稱yhmm文本用戶密碼yh

29、qx是/否用戶權(quán)限表3. 4 yonghu (用戶表)字段名稱數(shù)據(jù)類型說明djh文本登記號file備注相片所存的路徑表3. 5 guoj ia (國家表)字段名稱數(shù)據(jù)類型說明gjdm文本國家代碼szz文本國家所在州gjmc文本國家名稱表3. 6 zhuanye (專業(yè)表)字段類型意義示例idvarchar (50)編號namevarchar (50)名稱3. 4 e-r模型為了把用戶的數(shù)據(jù)要求清晰明確地表達出來,通常要建立一個概念性的數(shù)據(jù) 模型(也稱為信息模型)。概念性數(shù)據(jù)模型是一種面向問題的數(shù)據(jù)模型,是按照 用戶的觀點來對數(shù)據(jù)和信息建模。它描述了從用戶角度看到的數(shù)據(jù),它反映了用 戶的現(xiàn)實環(huán)境

30、,且與在軟件系統(tǒng)中的實現(xiàn)方法無關(guān)。最常用的表示概念性數(shù)據(jù)模型的方法,是實體一聯(lián)系方法(entity relationship approach)o這種方法用er圖描述現(xiàn)實世界中的實體,而不涉及 這些實體在系統(tǒng)中的實現(xiàn)方法。用這種方法表示的概念性數(shù)據(jù)模型乂稱為er模 型。er模型中包含“實體”,“聯(lián)系”和“屬性”。在本系統(tǒng)數(shù)據(jù)表中用到的主鍵有:長期生表(changqisheng)中的id字段(編號); 短期生表(duanqisheng)中的id字段(編號); 招生表(zhaosheng)中的id字段(編號); 用戶表(yonghu)中的id字段(編號); 國家表(guojia)中的id字段(編號

31、); 專業(yè)表(zhuanye)中的id字段(編號)。密碼權(quán)限&業(yè)代碼名稱參照完整性是保證在主鍵(被參照表中)和外鍵之間的關(guān)系總是得到維護。 對兩個相關(guān)聯(lián)的表(主表和從表)進行操作數(shù)據(jù)的插入和刪除的時候,通過參照 完整性保證它們之間的數(shù)據(jù)的一致性。用戶自定義完整性,不同的數(shù)據(jù)庫系統(tǒng)根據(jù)數(shù)據(jù)應(yīng)用環(huán)境的不同,往往還需 要一些特殊的約束條件。它反應(yīng)某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要 求。對于用戶自定義完整性可以通過數(shù)據(jù)庫設(shè)計,也可以通過程序代碼來實現(xiàn)。 由于程序設(shè)計的靈活性和便捷性,在整個系統(tǒng)的調(diào)試過程中對于不完善的地方只 需對代碼進行修改而不用更改數(shù)據(jù)庫,因此在系統(tǒng)屮采用了程序代碼來實

32、現(xiàn)數(shù)據(jù) 庫用戶自定義完整性的約束。沈陽航空工業(yè)學(xué)院畢業(yè)設(shè)計(論文)第4章 系統(tǒng)詳細設(shè)計與實現(xiàn)4.1系統(tǒng)工作原理介紹本系統(tǒng)采用c/s結(jié)構(gòu)(clicnt/scrvcr,客戶端/服務(wù)器結(jié)構(gòu))的服務(wù)兩種模式.系統(tǒng)工作原理圖如圖4.1.1所示:用戶們息住用戶層中間償散據(jù)層圖4. 1. 1系統(tǒng)工作原理圖系統(tǒng)的工作流程包括以下一些關(guān)鍵環(huán)節(jié):(1) 用戶信息驗證。在每一個用戶使用本系統(tǒng)前,需要管理員先在后臺添加 了該用戶,才能登錄本系統(tǒng)。(2) 用戶登陸。用戶輸入用戶名和密碼后,系統(tǒng)驗證是否正確并決定用戶是 否能進入系統(tǒng)進行操作。(3) 用戶登錄后,按權(quán)限的不同,會有不同的選擇菜單,系統(tǒng)對用戶能做的 操作做了

33、權(quán)限控制。(4) 用戶在執(zhí)行一項操作后,系統(tǒng)會按操作要求進行數(shù)據(jù)庫的更新。以上各個環(huán)節(jié)相互聯(lián)系,前后影響。對于用戶的每一項操作,系統(tǒng)都會自動 讀取數(shù)據(jù)并更新其屮的數(shù)據(jù),并將更新后的數(shù)據(jù)保存到數(shù)據(jù)庫屮。4. 2系統(tǒng)數(shù)據(jù)流圖數(shù)據(jù)流圖(data flow diagram,簡稱dfd)能精確地在邏輯上描繪系統(tǒng)的功能、輸入、輸出和數(shù)據(jù)存儲等,擺脫了物理內(nèi)容,是描繪系統(tǒng)邏輯模型的最主 要的工具。經(jīng)過系統(tǒng)詳細調(diào)查分析以及用戶需求分析,我們得到了新系統(tǒng)的數(shù)據(jù)流圖。 圖4. 2.1管理員添加用戶數(shù)據(jù)流圖:錯誤信息頁面管理員登錄輸入相關(guān)的用戶信息a添加用戶v或招牛衣圖4. 2.1管理員添加用戶數(shù)據(jù)流圖圖4. 2.

34、 2用戶登錄數(shù)據(jù)流圖:背錄成功用戶名和密碼一*身份驗證管理員表、招生表或 學(xué)生表圖4. 2.2登錄數(shù)據(jù)流圖圖4.2.3用戶修改自身信息數(shù)據(jù)流圖:修改成功成功用戶修改自身信息 信息修改管理員表、招牛表或?qū)W生表圖4. 2. 3用戶自身信息數(shù)據(jù)流圖圖4.2.4查詢是否在校數(shù)據(jù)流圖:進入查詢頁面 一 查詢數(shù)據(jù)庫 查詢結(jié)果記錄表圖4. 2.4查詢是否在校數(shù)據(jù)流圖圖4.2.5管理員查看在學(xué)管理數(shù)據(jù)流圖:進入在學(xué)管理頁面 查詢數(shù)據(jù)庫 查詢結(jié)果學(xué)生表圖4. 2. 5管理員查看在學(xué)管理數(shù)據(jù)流圖圖4.2.6管理員管理學(xué)牛列表數(shù)據(jù)流圖:學(xué)生農(nóng)學(xué)生龍圖4. 2. 6管理員管理學(xué)生列表數(shù)據(jù)流圖圖4.2.7管理員管理專業(yè)

35、列表數(shù)據(jù)流圖:圖4. 2. 7管理員管理專業(yè)列表數(shù)據(jù)流圖圖4.2.9管理員管理管理員列表數(shù)據(jù)流圖:怦理切農(nóng)it理騎興圖4. 2.9管理員管理管理員列表數(shù)據(jù)流圖4. 3系統(tǒng)的實現(xiàn)算法4.3.1學(xué)生信息初始化算法通過前面幾章的分析,我們已經(jīng)知道用戶信息是用戶在留學(xué)生管理系統(tǒng)中操 作的基礎(chǔ)。由用戶模型可以了解,個人信息是用戶登陸系統(tǒng)的入口;用戶信息的 特征則是確定適合用戶權(quán)限與功能的基礎(chǔ);所以設(shè)計好用戶信息輸入算法對后面 的各種功能有著重要作用。用戶信息是由管理員在后臺管理系統(tǒng)中輸入的。該算法中牽涉長期生表(chanqi sheng)、短期生表(duemqi sheng)和招生 表(zhaoshen

36、g),以下便以一個通用的算法來描述添加學(xué)生和管理員所涉及的數(shù) 據(jù)結(jié)構(gòu)和詳細過程。輸入:1管理員添加一個用戶,并輸入信息,如登記號,姓名等。輸岀:用戶添加成功的信息。算法的主要步驟如下:(1) 初始化,包括打開數(shù)據(jù)庫changqi sheng或duanqi sheng或zhaosheng 表、建立數(shù)據(jù)庫的連接等;(2) 在管理員輸入之后,且通過確認后將用戶信息添加-條記錄到對應(yīng)的表 中;(3) 結(jié)束。向?qū)?yīng)的表屮 加入一條記錄圖4. 3.1.1用戶信息初始化算法流程圖4. 3. 2轉(zhuǎn)在學(xué)管理算法本算法主要描述了管理員在后臺添加等級學(xué)生后在轉(zhuǎn)在學(xué)管理中進行 轉(zhuǎn)在學(xué)管理操作的過程。具體算法如下:(1

37、) 管理員進入傳在學(xué)管理頁面(2) 連接數(shù)據(jù)庫,建立記錄集,把已有數(shù)據(jù)顯示給管理員查看;(3) 管理進行轉(zhuǎn)在學(xué)操作;(5)結(jié)束;算法流程圖如圖43.2.1所示:開皓圖4. 3. 2. 1轉(zhuǎn)在學(xué)管理流程圖4. 3. 3在學(xué)管理算法在用戶登錄系統(tǒng)后,用戶可以自行修改學(xué)生的信息,如姓名等。具體算法 如下:(1) 進入個人信息頁而;(2) 輸入需要修改的內(nèi)容;(3) 連接數(shù)據(jù)庫,把數(shù)據(jù)寫入數(shù)據(jù)庫屮;(4) 結(jié)束;算法流程圖如圖4. 3. 3. 1所示:開始站慮圖4. 3. 4.1在學(xué)管理流程圖4.3.4國家、專業(yè)信息算法在登錄系統(tǒng)后,可以選擇國家、專業(yè)的信息管理。具體算法如下:(1) 進入選修課程頁面

38、;(2) 選擇需要修改的國家、專業(yè);(3) 連接數(shù)據(jù)庫,把數(shù)據(jù)寫入數(shù)據(jù)庫中;(4) 結(jié)束;算法流程圖如圖4. 3.4.1所示:開始站慮圖4. 3. 4. 1國家、專業(yè)信息管理流程圖4. 3. 5學(xué)生信息算法在登錄系統(tǒng)后,可以查看學(xué)生信息等。具體算法如下:(1) 登錄進入系統(tǒng);(2) 選擇查看學(xué)生信息功能;(在校或非在校)(3) 連接數(shù)據(jù)庫,顯示該學(xué)生的所有信息,則會以紅色顯示;(4) 結(jié)束;算法流程圖如圖4. 3. 5.1所示:開始圖4. 3. 5. 1查看學(xué)生信息流程圖4.4前端頁面的設(shè)計與實現(xiàn)在后臺數(shù)據(jù)庫建立與整體設(shè)計的基礎(chǔ)上,前端頁面的設(shè)計與開發(fā)尤其重要, 對于學(xué)生管理系統(tǒng)來說,主要包插

39、的頁面模塊有:用戶登錄模塊、招生管理模塊、 轉(zhuǎn)在學(xué)管理模塊,在學(xué)管理模塊,統(tǒng)計查詢模塊,系統(tǒng)管理模塊等。在以下小節(jié) 中,將對各模塊做具體介紹。4. 4.1系統(tǒng)公用類在本系統(tǒng)中,通過建立一些公用的類,可以方便的建立與數(shù)據(jù)庫的連接或者 使用一些功能。女u: dbutil. java> dbmanager. java是數(shù)據(jù)庫操作的線程池類(1) dbmanager. java 文件dbmanager. java文件是對數(shù)據(jù)庫操作的基本類,主要封裝了對數(shù)據(jù)庫操作, 如通過jdbc連接數(shù)據(jù)、斷開數(shù)據(jù)庫連接、取得數(shù)據(jù)集等。此文件基本上貫穿了 整個系統(tǒng),它包含在各文件中,是系統(tǒng)的主要部分與精髓。pac

40、kage db;import java.sql*;import util.*;public class dbmanager private static dbmanager me = new dbmanager();private dbmanager ()public static dbmanager getinstance () return me;/ public connection getconnection()/string driver ="com.micros。ftjdbcsqlserver.sqlserverdrivern;/stringurl =n jdbc :mi

41、crosoft: sqlserver: /zhntr03 :1433; databqsqn4mq=sairt ;/stringuser = nsau;/stringpwd = nturboh;/try /classforname(driver);/connection con =drivermanager.getconnection(urlz user,pwd);/return con;/ catch (exceptionex) /ex.printstacktrace();/return null;/ public connection getconnection () string para

42、ms = parsedsconfig.getparams();string driver = ncom.microsoft.jdbc.sqlserver.sqlserverdrivern; string url =n jdbc :microsoft: sqlserver: /11+params 0 + n :11+params 1 + n ; databasenmme= samn;string user = params2;string pwd = params3;try classforname(driver);connection con = drivermanager.getconnec

43、tion(url, user, pwd); return con; catch (exception ex) ex.printstacktrace();return null;public void closeconn (connection con) try conclose (); catch (sqlexception ex) ex.printstacktrace ();public void rollback(connection con) try conrollback (); catch (sqlexception ex) ex.printstacktrace();/ public

44、 static void main(string args) /try /dbmanager dd = new dbmanager();/connection conn = dd.getconnection();/system.out.printin("connection is h + conn.tostring();/ catch (exception ex) /ex<printstacktrace();/system, out .printin (,f =,f);/ (2) dbutil. java 文件dbutil. java文件是數(shù)據(jù)庫對數(shù)據(jù)庫操作的核心類。packa

45、ge db;import java.util.*;import javasql*;import utimport vostudentmessage;public class dbutil publie dbutil()public resultset executequery(string sql) resultset rs = null;preparedstatement stmt = null;connection con = null;try con = dbmanager.get instance() .getconnection (); stmt = con.preparestate

46、ment(sql);rs = stmt.executequery (); catch (sqlexception e) e.printstacktrace (); finally try conclose(); catch (sqlexception e) eprintstacktrace ();try stmtclose (); catch (sqlexception e) e.printstacktrace ();try rsclose (); catch (sqlexception e) e.printstacktrace ();return rs;public int executed

47、elete (string sql) int result = 一1;preparedstatement stmt = null;connection con = null;try con = dbmanagerget instance() getconnection(); stmt = con.preparestatement(sql);result = stmtexecuteupdate();if(result <= 0) result = -1; catch (sqlexception e) e.printstacktrace (); finally try conclose ()

48、; catch (sqlexception e) e printstacktwce ();try stmtclose (); catch (sqlexception e) e.printstacktrace ();return result;public int executeupdate(studentmessage obj,string pk) string sql = ,fupdate changqisheng set h +,fxh=?,djh=?, zb=?,gb=?,xm=?z n + nywxm=?z xb=?z csrq=?z zy=?,xk=?,n + nlhrq=?,rzy

49、rq=?,zyyx=?,xxdq=?,yjlxrq=?,h+ ,fxslb=?f lxrq=?z y jtxdz=?, hzlb=?z hzhm=?, ,f + "zjzz=?,lxdh=?z jlzhm=?z jw202xh=?,jw202qfrq=?z" + ht j jg=?z bz = ? , hf=? , zyl = ? , sfxs=? , 11 + ,fpicurl=? n +"where djh = ? '* ;/主鍵int result = -1;preparedstatement stmt = null;connection con =

50、 null;try con = dbmanager.get instance() .getconnection (); stmt = con.preparestatement(sql);/stmtsetstring(1, obj.getxh()trim();stmt. setstring (1, ,f 1010111) ; / /學(xué)號有問題stmtsetstring(2,stringpaserchinesetounicode(objgetdjh()tostring()trim();stmtsetstring(3,stringpaserchinesetounicode(obj.getzb()to

51、string()trim();stmtsetstring(4,stringpaserchinesetounicode(objgetgb() tostring () .trim();stmtsetstring(5,stringpaserchinesetounicode(objgetxm()tostring().trim();stmtsetstring(6,stringpaser.chinesetounicode(objgetywxm()tostring()trim();stmtsetstring(7,stringpaser.chinesetounicode(obj.getxb().tostrin

52、g().trim();/性 別有問題/stmt setstring (7, 11111);stmtsetstring(8,stringpaserchinesetounicode(objgetcsrq() tostring () trim();stmtsetstring(9,stringpaser.chinesetounicode(obj.getzy().tostring().trim();11=專業(yè)stmtsetstring(10,stringpaserchinesetounicode(obj.getxk()tostring().trim();stmtsetstring(llzstringpa

53、serchinesetounicode(obj.getlhrq()tostring()trim();stmtsetstring(12,stringpaserchinesetounicode(objgetrzyrq()tostring()trim();/stmt. setstring (13, ob j . getzyyx () . trim () ) ;/專業(yè)院校stmtsetstring (13, n n);stmt. setstring (14, 1111) ;/在學(xué)地區(qū)stmtsetstring(15,stringpaser.chinesetounicode(obj.getyjlxrq() .tostring () .trim();stmtsetstring(16,stringpaser.chinesetounicode(obj.getxslb().tostring().trim();stmtsetstring(17zstringpaserchinesetounicode(obj.getlxrq().tostring()trim();stmtsetstring(18,stringpaserch

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論