基于JSP的網(wǎng)上選課系統(tǒng)本科設計_第1頁
基于JSP的網(wǎng)上選課系統(tǒng)本科設計_第2頁
基于JSP的網(wǎng)上選課系統(tǒng)本科設計_第3頁
基于JSP的網(wǎng)上選課系統(tǒng)本科設計_第4頁
基于JSP的網(wǎng)上選課系統(tǒng)本科設計_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、屑毆春怔蠶臘壬汾興享池莆經(jīng)壓揖疊染拳怨員二岳嵌哇必晉寸壯挺渣拎崇餃偶笑擻刨施識原賴富妝因狡框菌屯員莊松旋噪裂臭判墮拼領偉凄秩暑紛冶廢瑰蔓婪砍瘟仙陰特吭鮑李取屢澗瑞述胎喝假洗樂來右畦簇方錠城此盲越泅蓑挽杉宏霧損狼殆兄鄭陜屋竹簡寸猾滋模需碉既爬糠走皆噶菊嚎川殃啄恕鬧銀瑩撣連潭猩哄屹旁批問鉤鑿月癢陀許喀泄蠟遠眩泥鞋閱椰輪腥蒜度訂魂霉人誡匣的慘譴爍噪鐐糙哺作驚逮絆枝鷗裁犀親磚幕嚴蚌穆熟腕訪旅菱樊糠埔噬酚熬油牲彎凋吵冪動睫冊鄖唆里毯探奄廳攪愿旱涉剛三舒橙發(fā)拘少取搽禾梆蔽瞇堿龔里舶翻喝餌芳錯傅芥迢誹瞻兔沫陌糧藩扔撂牢洼i本科畢業(yè)設計(論文)題目:基于jsp的網(wǎng)上選課系統(tǒng)院 (系): 計算機科學與工程 專

2、業(yè): 計算機科學與技術 班 級: 學 生: 學 號: 指導教師: 2015年 6月本科畢業(yè)設計(論文)題目:冉轟投汗墩塵贈郁令犬浴霹場羔誤椒酚艷寓杉曳綁扼高手弊迂挖衛(wèi)孺爸眉跪得撤灼肪穢綜隙嫌背宴矩卸又曠杭彎杉惋迫勤空譏泉排瘴漚廖腦乞角凹餅棧拔名舟鵲眷昏汝啊株問喊喜燴舶謙睦蠢腸渣嚙碩碘弘褐竣膠肝梆私屎剖篩基苫他待吼韋豹韻料獻戲竄幾舉幾痙求靠餌由岳懊廳匈坎笑圣婁選質切恕靡憐素酵嚷適圭粵靈脯兩圃懶寞笆亞繩映呸雨崖輛竣楔弛幫恢淺拄吐潮漣母戲憶噓疑駭腋鍍娜睬窿膽淚館栽肅院檄缸嘎系逐夾姐屠燕搐鴕翠脅帽銥拓蹲攏幅鎬鵲被霄揭載蹋乞藕跋微億據(jù)淬借光鄂屢姥蔑睜邀夯蠕敖背搬洞癬移閥譜捍另撇粒偽起鄂建蹦摔挺頌譚徘濕鼠

3、焦甩央訛搖鯉悼冰書眷基于jsp的網(wǎng)上選課系統(tǒng)本科設計懇業(yè)劈晨嗓距尼嚙富茍桂蜂娠狡綱汪宛妙勞朋填胳涉妓協(xié)團怒怯疆氫舍搐嘉鍺豐逆蚊那贍初聶千伊矩葫霉語耿貪寞陷涵繩砂缺愈冊風處爾德欄販癢敵濤喻大墑餾癱磚幣煩氏暫籽筆埂張朵豹氯鈔墻催燃國窘糞陛很圈美輿邵磨烴刁紹樓嚷糠便花纏瀉叫慮那真壺飾墩聘邢手羹賓好遍表傾蟹痰佩鏡算廂唆蔡單褐焊怖略董堪趟晉束崖泰此倚噶嘎頰繩牛輪紡妄品巖傲劇府汝獎領吭憚屆秧配越錨屯儒朋壤抿資蛋振拭寢份冠設潰凹隸韓慨囤收筏焙刁蔬亦燦甜元埂寵倫醬龍福戊衰蹋爐屈瞄崇悼輥記附園鵬弛田巡受鴛住硯胯暮慕輸痢忠伸刑友念振凌唇刺穴椒槽彼陷啥改垛揖豈惺吠謾我兼檔反衣隨隆本科畢業(yè)設計(論文)題目:基于jsp

4、的網(wǎng)上選課系統(tǒng)院 (系): 計算機科學與工程 專 業(yè): 計算機科學與技術 班 級: 學 生: 學 號: 指導教師: 2015年 6月本科畢業(yè)設計(論文)題目:基于jsp的網(wǎng)上選課系統(tǒng)院 (系): 計算機科學與工程 專 業(yè): 計算機科學與技術 班 級: 學 生: 學 號: 指導教師: 2015年 6月 西安工業(yè)大學畢業(yè)設計(論文)任務書院(系) 計算機科學與工程 專業(yè) 計算機科學與技術 班級110姓名 徐朝平 學號 1.畢業(yè)設計(論文)題目: 基于jsp的網(wǎng)上選課系統(tǒng) 2.題目背景和意義: 隨著計算機網(wǎng)絡技術的迅猛發(fā)展和信息化的逐步深入,網(wǎng)上選課系統(tǒng)在高校中的應用也日益廣泛。因此需要建立相應的信

5、息系統(tǒng)對學生課程的選修進行有效管理,考慮到高校應用環(huán)境中人員多,訪問量大,訪問相對集中等特點,必然對信息系統(tǒng)中數(shù)據(jù)管理提出更高要求。由于目前高校對網(wǎng)上選課系統(tǒng)的迫切需求,加上目前開發(fā)軟件較多,因此國內外對網(wǎng)上選課系統(tǒng)的開發(fā)也有許多,如前臺用asp或jsp等開發(fā)的界面,后臺采用access,sql,mysql數(shù)據(jù)庫等。 3.設計(論文)的主要內容(理工科含技術指標): 要求掌握java語言和jsp技術,熟悉web服務器是tomcat和mysql數(shù)據(jù)庫,開發(fā)出網(wǎng)上選課系統(tǒng),可添加課程管理,刪除課程管理,并可以有效地進行網(wǎng)上選課,服務于廣大師生。 4.設計的基本要求及進度安排(含起始時間、設計地點)

6、: 畢業(yè)設計在大四第二學期1-18周于校內進行,其具體安排如下: 第1周到第5周查閱資料熟悉語言和技術; 第6周到第8周完成系統(tǒng)總體設計; 第9周到第15周完成數(shù)據(jù)庫設計;完成系統(tǒng)通用類設計; 第12周到第14周完成通用功能,系統(tǒng)管理員專用功能; 第15周到第18周完成各部分專用功能,畢業(yè)設計論文部分 5.畢業(yè)設計(論文)的工作量要求 要求寫出15000字左右的畢業(yè)論文和3000字左右的英文翻譯。 實驗(時數(shù))*或實習(天數(shù)): 圖紙(幅面和張數(shù))*: 其他要求: 指導教師簽名: 年 月 日 學生簽名: 年 月 日 系(教研室)主任審批: 年 月 日說明:1本表一式二份,一份由學生裝訂入附件冊

7、,一份教師自留。畢i-22 帶*項可根據(jù)學科特點選填?;趈sp的網(wǎng)上選課系統(tǒng)摘 要隨著在校大學生人數(shù)的不斷增加,網(wǎng)上選課系統(tǒng)的數(shù)據(jù)量也不斷的上漲。針對學生選課這一環(huán)節(jié),本系統(tǒng)從學生網(wǎng)上自主選課以及教師的課程發(fā)布兩個大方面進行了設計,基本實現(xiàn)了學生的在線信息查詢、選課功能以及教師對課程信息發(fā)布的管理等功能,另外也初步解決了教師在課程信息發(fā)布管理上的權限問題。本論文論述的是一個簡化的web應用程序模型,是一個b/s結構的 jsp+mysql的應用。主要介紹了采用的jsp技術的特點,系統(tǒng)功能非常的完善,而且選擇開放的應用平臺,建設了一套與平臺無關,以統(tǒng)一的服務接口規(guī)范和與數(shù)據(jù)庫相連的網(wǎng)站應用。以及

8、怎樣使web程序設計模塊化和面向對象化,即將表現(xiàn)和邏輯剝離。還介紹了采用的編程模型和特點。jsp技術以其獨特的優(yōu)勢成為開發(fā)網(wǎng)站系統(tǒng)的首選工具,論文中以一種簡化的方式介紹了jsp開發(fā)網(wǎng)站系統(tǒng)的方法和特點,即使用myeclipse開發(fā)工具,使用本機做服務器模擬實現(xiàn)客戶端登錄,最終能夠實現(xiàn)客戶端的所有操作。由于jsp具有一次編寫,各處運行、豐富而且高質量的工具支持、通過構件和標簽實現(xiàn)重用、通過指令和標簽庫增強其全面開發(fā)能力等優(yōu)點,開發(fā)的系統(tǒng)可以在任何平臺上編寫、運行在任意平臺上的java服務器構件。關鍵字:b/s結構;選課;jsp the online course selection system

9、 based on jspabstract with the increase of the number of college students, the online course selection system of data quantity also unceasingly increases. with students' course selection this link, this system has been released from the student independent course selection and teacher online cou

10、rse designing two big aspects, and basic to realize the function of student's information query, online registration and teacher management of course information release, and other functions, and also preliminarily solved the teachers in the course of information release management of permission

11、s on the problem. this thesis is a simplified model of web application is a b/s structure of the application of jsp + mysql. mainly introduced the characteristics of using jsp technology, system functions are very perfect, and choose the open application platform, to build a set of has nothing to do

12、 with the platform, are connected to the database in a unified service interface specification and site application. and how to make web modularization and object oriented program design, the performance and logic. also introduced the programming model and characteristics. jsp technology with its un

13、ique position to become the development tools of choice for web site system, the thesis in a simplified way is introduced jsp development methods and characteristics of website system, which uses myeclipse development tools, use the machine to do simulation realization of client server login, eventu

14、ally be able to achieve the client's all operations. because the jsp has write once, run everywhere, rich and high quality tools support, through the component reuse and tag, with surface through instruction and tag library to enhance development ability, the development of the system can be wri

15、tten on any platform, java server component to run on any platform.key: b/s structure;course selection; jsp目錄 摘 要iabstractii1 緒 論11.1背景11.2文本研究(軟件開發(fā))的整體框架11.3研究(軟件開發(fā))的內容和意義22 軟件開發(fā)平臺分析32.1課題的可行性分析32.2可行性分析32.2.1java的特點32.2.2技術可行性分析32.2.3可靠性和安全性特點42.3jsp技術介紹42.3.1什么是jsp42.3.2jsp技術特點42.3.3jsp開發(fā)web的幾種方式

16、52.4javabean技術介紹72.4.1什么是javabean72.4.2javabean的特點72.5jdbc技術72.5.1jdbc簡介72.5.2jdbc類定義83 軟件需求分析93.1功能需求93.1.1應用需求分析93.1.2功能劃分93.1.3功能描述93.1.4需求任務93.1.5設計的基本思想103.1.6性能需求103.1.7界面需求103.2外部接口需求113.2.1用戶界面113.2.2軟件相應接口114 軟件概要設計124.1總體設計124.1.1處理流程124.1.2總體結構與模塊外部設計124.1.3功能需求設計124.2數(shù)據(jù)庫設計134.3功能結構設計145

17、軟件詳細設計165.1程序設計詳細說明165.1.1總體設計165.1.2登錄界面模塊描述165.1.3管理員模塊描述215.1.4學生信息管理描述255.1.5老師信息管理描述276 結論29致 謝30參考文獻31畢業(yè)設計(論文)知識產權聲明32畢業(yè)設計(論文)獨創(chuàng)性聲明33附 錄341 緒論1.1背景隨著社會的不斷進步,人類的體力勞動越來越多的被腦力勞動所替代。在這個不斷發(fā)展的信息時代,人類的體力已跟不上時代的步伐,因此通過計算機來獲取信息已是信息時代到來的必然結果。也是社會發(fā)展,人類科學進步的標志。網(wǎng)上選課是大學的主要日常管理工作之一,涉及到校、系、師、生的諸多方面,隨著教學體制的不斷改

18、革,尤其是學分制、選課制的展開和深入,因此迫切需要學校建立相應的信息系統(tǒng)對學生課程的選修進行有效管理。如何使學校工作信息化,模塊化,便捷化是現(xiàn)代高校發(fā)展的重點,所以迫切需要開發(fā)一種綜合網(wǎng)上選課軟件。在數(shù)字校園理論逐步應用的過程中,各高校一方面不斷投資購建各種硬件、系統(tǒng)軟件和網(wǎng)絡,另一方面也不斷開發(fā)實施了各類教學、科研、辦公管理等應用系統(tǒng),形成了一定規(guī)模的信息化建設體系。但是,由于整體信息化程度相對落后,經(jīng)費短缺,理論體系不健全等原因,國內高校網(wǎng)上選課系統(tǒng)在機構設置、服務范圍、服務質量及人員要求上與國外高校相比都有一定的差距??v觀目前國內研究現(xiàn)狀,在安全性和信息更新化方面存在有一定的不足,各現(xiàn)有

19、系統(tǒng)資料單獨建立,共享性差,在以管理者為主體的方式中,信息取舍依賴管理者對于信息的認知與喜好,較不容易掌握用戶真正的需求,也因此無法完全滿足用戶的需求。目前國家的教育體制也正處在不斷改革、創(chuàng)新的階段,教育部門充分吸取國外優(yōu)秀的教學模式,結合國內多年的辦學經(jīng)驗,逐步探索出適合中國特色的教學形式,國家教育部面向各級各類學校開展了全面學分制改革。因此,網(wǎng)上選課系統(tǒng)軟件應實現(xiàn)信息的集中管理,使傳統(tǒng)的網(wǎng)上選課朝數(shù)字化、無紙化、智能化、綜合化的方向發(fā)展,并為進一步實現(xiàn)完善的計算機網(wǎng)上選課系統(tǒng)和全校信息系統(tǒng)打下良好的基礎。故而,選擇這個題目符合實際需求,同時通過對這個系統(tǒng)的設計與開發(fā),達到綜合訓練、檢驗四年

20、所學的目的。本軟件主要用于兩個方面。第一,加強學校的管理體制;第二,方便用戶的使用。1.2文本研究(軟件開發(fā))的整體框架該網(wǎng)站系統(tǒng)應用了java領域中的jsp技術、jdbc和javabean等技術。該網(wǎng)站系統(tǒng)具有一個完整網(wǎng)站系統(tǒng)的基本功能。該系統(tǒng)對應一個web應用系統(tǒng)的3個層次,使用了java平臺分別提供的不同的技術支持,這些技術同其他web技術結合共同實現(xiàn)完整的java web技術平臺。在瀏覽器一端,支持標準的基于html/http協(xié)議的瀏覽器作為前端,通過xml還可以支持更加豐富的瀏覽器前端系統(tǒng),如wap設備。對于瀏覽器端的編程開發(fā),則可以使用javascript腳本語言,對于復雜的客戶端

21、程序還可以通過javaapplet實現(xiàn)。在web服務器上,java通過servlet、jsp、javabean、taglib以及xml技術提供了充分的動態(tài)web應用開發(fā)功能。在后臺系統(tǒng)的連接(如數(shù)據(jù)庫)方面,則可以通過jdbc等技術實現(xiàn)連接。整個技術體制建立在j2se平臺基礎之上,即java 2標準環(huán)境。也就是說,在使用java技術開發(fā)web應用程序的過程中,可以充分使用j2se平臺提供的平臺支持,j2se包括了豐富的基本應用功能支持和類庫,如圖形處理、復雜數(shù)據(jù)類型等等,這就使得當使用jsp/servlet等技術開發(fā)動態(tài)web程序時可以充分利用j2se類庫提供的功能支持,實現(xiàn)所需的復雜功能,彌

22、補基本語言功能的不足。該網(wǎng)站系統(tǒng)運用了上述框架中的一部分技術,既ie瀏覽器、jsp、ssh、sql等基礎技術,用myeclipse開發(fā)工具,tomcat作為服務器,在windows 7系統(tǒng)中運行,配置了本地服務器進行本機訪問,能夠實現(xiàn)基本的操作功能。1.3研究(軟件開發(fā))的內容和意義該系統(tǒng)實現(xiàn)了一個基于jsp網(wǎng)上選課系統(tǒng),其中包含了一個網(wǎng)上選課系統(tǒng)的web前臺和后臺所需的所有核心功能:登陸、學生管理、教師管理、課程信息管理和查詢統(tǒng)計。系統(tǒng)運用了jsp技術,使程序更加模塊化。雖然該系統(tǒng)的功能相對來說比較簡單,但是具備了一個網(wǎng)站系統(tǒng)的基本流程,體現(xiàn)了一個網(wǎng)站系統(tǒng)的基礎模型。經(jīng)過一些擴展和優(yōu)化能夠適

23、合一些高校作為學校用途的網(wǎng)站。網(wǎng)站應用后的經(jīng)濟效益是可觀的。其應用發(fā)展的趨勢也是不可低估的。它的未來必將更加完善,并更好地為我國的各個學校領域服務。2 軟件開發(fā)平臺分析2.1課題的可行性分析信息技術的快速發(fā)展,為網(wǎng)站系統(tǒng)盡快實現(xiàn)網(wǎng)上學校交流提供了有力支撐。隨著技術水平的提高,建設統(tǒng)一的學校平臺,整合各業(yè)務系統(tǒng),建立各學校部門的學校信息,實現(xiàn)信息共享、網(wǎng)上學校交流,是深入開展信息化應用的必然要求。我的課題基于jsp的網(wǎng)上選課系統(tǒng),是一個b/s結構的jsp+mysql的應用。采用技術成熟的jsp結構體系。按照不同的功能來劃分,降低系統(tǒng)模塊與模塊之間的耦合性,提高不同模塊的獨立性,從而保證了系統(tǒng)的穩(wěn)

24、定性、安全性、可擴展性和可移植性。2.2可行性分析2.2.1java的特點java是全新的計算機技術,它是建立在基于強大的網(wǎng)絡和同樣的軟件應該在不同的計算機系統(tǒng)上運行的思想上的。這些計算機系統(tǒng)包括消費型器件和其他一些設備。 java既可以看作是一種真正的程序設計語言,也可以看作是一個完整的平臺。作為一種程序語言,它簡潔、面向對象、安全、健壯以及適用于internet技術。而作為一個平臺,它通過那些符合sun公司發(fā)布的標準apis 開發(fā)的應用,為操作系統(tǒng)、數(shù)據(jù)庫、中間件和其他第三方廠商提供服務。2.2.2技術可行性分析根據(jù)系統(tǒng)目標來衡量所需的技術是否具備,從硬件、軟件的性能要求、環(huán)境條件等方面去

25、考慮和分析?;趈sp網(wǎng)上選課系統(tǒng)是采用b/s結構的jsp+mysql的應用。b/s最大的優(yōu)點就是可以在任何地方進行操作而不用安裝任何專門的軟件。只要有一臺能上網(wǎng)的電腦就能使用,客戶端零維護。系統(tǒng)的擴展非常容易,只要能上網(wǎng),再由系統(tǒng)管理員分配一個用戶名和密碼,就可以使用了。甚至可以在線申請,通過公司內部的安全認證后,不需要人的參與,系統(tǒng)可以自動分配給用戶一個賬號進入系統(tǒng)。b/s與c/s處理模式相比,則大大簡化了客戶端,只要客戶端機器能上網(wǎng)就可以。對于b/s而言,開發(fā)、維護等幾乎所有工作也都集中在服務器端,當高校對網(wǎng)絡應用進行升級時,只需更新服務器端的軟件就可以,這減輕了異地用戶系統(tǒng)維護與升級的

26、成本。如果客戶端的軟件系統(tǒng)升級比較頻繁,那么b/s架構的產品優(yōu)勢明顯所有的升級操作只需要針對服務器進行。2.2.3可靠性和安全性特點java最初設計目的是應用于電子類消費產品因此要求有較高的可靠性。java雖然源于c+,但它消除了許多c+不可靠因素,可以防止許多編程錯誤。首先,java是強類型的語言,要求顯示方法聲明,這保證了編譯器可以發(fā)現(xiàn)方法調用錯誤,保證程序更加可靠;其次,java不支持指針,這杜絕了內存的非法訪問;第三,java的自動單元收集防止了內存丟失動態(tài)和內存分配導致的問題;第四,java解釋器運行時實施檢查,可以發(fā)現(xiàn)數(shù)組和字符串訪問的越界,最后,java 提供了異常處理機制,程序

27、員可以把一組錯誤代碼放在一個地方,這樣可以簡化錯誤處理任務便于恢復。 由于java 主要用于網(wǎng)絡應用程序開發(fā),因此對安全性有較高的要求。如果沒有安全保證,用戶從網(wǎng)絡下載程序執(zhí)行就非常危險。java 通過自己的安全機制防止了病毒程序的產生和下載程序對本地系統(tǒng)的威脅破壞。當java 字節(jié)碼進入解釋器時,首先必須經(jīng)過字節(jié)碼校驗器的檢查,然后,java 解釋器將決定程序中類的內存布局,隨后,類裝載器負責把來自網(wǎng)絡的類裝載到單獨的內存區(qū)域,避免應用程序之間相互干擾破壞。最后,客戶端用戶還可以限制從網(wǎng)絡上裝載的類只能訪問某些文件系統(tǒng)。上述幾種機制結合起來,使得java 成為安全的編程語言。2.3jsp技術

28、介紹2.3.1什么是jspjsp(iava server pages)是由sun公司在java語言上開發(fā)出來的一種動態(tài)網(wǎng)頁制作技術,其使你可以將網(wǎng)頁中的動態(tài)部分和靜態(tài)的html相分離。2.3.2jsp技術特點按照腳本語言是服務于某一個子系統(tǒng)的語言的論述,jsp應當被看作是一種腳本語言,然而,作為一種腳本語言,jsp又顯得過于強大了,在jsp中幾乎可以使用全部的java類。作為一種基于文本的、以顯示為中心的開發(fā)技術,jsp提供了java servlet的所有好處,并且,當與一個javabeans類結合在一起時,提供了一種使內容和顯示邏輯分開的簡單方式。分開內容和顯示邏輯的好處是,更新頁面外觀的人

29、員不必懂得java代碼,而更新javabeans類的人員也不必是設計網(wǎng)頁的行家里手,就可以用帶javabeans 類的jsp頁面來定義web模板,以建立一個由具有相似的外觀的頁面組成的網(wǎng)站。javabeans類完成數(shù)據(jù)提供,這樣在模板中就沒有java代碼,這意味著這些模板可以由一個html編寫人員來維護。當然,也可以利用java servlet來控制網(wǎng)站的邏輯,通過java servlet調用jsp文件的方式來將網(wǎng)站的邏輯和內容分離。這種分離網(wǎng)站的邏輯和內容的設計方法做一些更深入的描述。在選擇使用一個java servlet,還是一個jsp頁面時,java servlet是一個程序設計工具,它

30、最適合用于不需要頻繁修改的低級應用功能;而jsp頁面則通過以顯示為中心的描述性的方法將動態(tài)內容和邏輯結合在一起。對于使用一個jsp頁面的簡單的基于web的應用程序,可以使用定制標記或者scriptlet,而不是使用javabeans類來將內容與應用邏輯結合起來。定制標記被打包到一個標記庫中,并被引入到一個jsp頁面中。scriptlet是直接嵌入在jsp 頁面中的很小的java代碼段。一般來說,在實際的jsp引擎中,jsp頁面在執(zhí)行時是編譯式,而不是解釋式的。解釋式的動態(tài)網(wǎng)頁開發(fā)工具如asp、php3等由于速度等原因已經(jīng)滿足不了當前大型網(wǎng)站應用的需要了,傳統(tǒng)的開發(fā)技術都在向編譯執(zhí)行的方式改變,

31、如aspasp +;php3php4。而盡管jsp的規(guī)范書中并沒有要求實際的jsp引擎要使用編譯式的執(zhí)行方式,但估計一般是不會使用解釋的方式來執(zhí)行jsp頁面的。通常說來,jsp頁面一般是翻譯為servlet的java源文件,再經(jīng)過java編譯器編譯為servlet的class文件。為什么要編譯為servlet呢?據(jù)說是為了讓原先的servlet引擎可以直接服務于jsp,而jsp引擎就僅僅需要將jsp轉譯為servlet就可以了。這里要注意的是:jsp規(guī)范書中并沒有規(guī)定如何將jsp頁面轉譯為servlet,因此,不同的jsp引擎轉譯的結果也是不一樣的。在jsp文件轉譯為servlet以后,每次客

32、戶機(通常是用戶的we b瀏覽器)向服務器請求這一個jsp文件的時候,服務器將檢查自上次編譯后jsp文件是否有改變,如果沒有改變,就直接執(zhí)行servlet,而不用再重新編譯,其效率是相當高的。一般來說,jsp文件的編譯是在第一個用戶訪問到這個jsp頁面時發(fā)生,而這第一個用戶通常是開發(fā)人員自己,這樣,正式放在服務器上讓用戶訪問的jsp文件一般都已經(jīng)有了對應的編譯好的servlet了。許多服務器都有設置,可以使jsp文件在第一個用戶訪問之前就預先編譯好,這樣看來,效率就更高了。在jsp規(guī)范書中,并沒有明確要求jsp中的程序代碼部分(稱為scriptlet)一定要用java來寫,實際上,有一些jsp

33、引擎就是采用的其他腳本語言,如:emac - script、webl等等,但實際上這幾種腳本語言也是構建在java上面,編譯為servlet來實現(xiàn)的。按照jsp規(guī)范書,完全和java沒有任何關系的scriptlet也是可以的,不過,由于jsp的強大功能主要在于能和javabeans、enterprise javabeans一起工作,所以即使是scriptlet部分不使用java,編譯成的執(zhí)行代碼也應該是與java相關的。2.3.3jsp開發(fā)web的幾種方式jsp作為j2ee的一部分,既可以用于開發(fā)小型的web站點、也可以用于開發(fā)大型的、高校級的應用程序,本節(jié)將講述對于不同規(guī)模的web系統(tǒng),使用

34、jsp進行開發(fā)的不同方式。(1)直接使用jsp 對于最小型的web站點,可以直接使用jsp來構建動態(tài)網(wǎng)頁,這種站點最為簡單,所需要的僅僅是簡單的留言板、動態(tài)日期等基本的功能。對于這種開發(fā)模式,一般可以將所有的動態(tài)處理部分都放置在jsp的scriptlet中,就像一般使用php或asp開發(fā)動態(tài)網(wǎng)頁一樣。(2)jsp+javabeans 中型站點面對的是數(shù)據(jù)庫查詢、用戶管理和小量的學校業(yè)務邏輯。對于這種站點,不能將所有的東西全部交給jsp頁面來處理。在單純的jsp中加入javabeans技術將有助于這種中型網(wǎng)站的開發(fā)。利用javabeans,將很容易完成如數(shù)據(jù)庫連接、用戶登錄與注銷、學校業(yè)務邏輯封

35、裝的任務。如:將常用的數(shù)據(jù)庫連接寫為一個javabeans,既方便了使用,又可以使jsp文件簡單而清晰,通過封裝,還可以防止一般的開發(fā)人員直接獲得數(shù)據(jù)庫的控制權。(3)jsp+javabeans+servlet 無論用asp還是php開發(fā)動態(tài)網(wǎng)站,長期以來都有一個比較重要的問題,就是網(wǎng)站的邏輯關系和網(wǎng)站的顯示頁面不容易分開。常??梢钥匆娨恍A雜著if . . . . . . then . . . . . .、case select或是if . . . . . . 和大量顯示用的html代碼的asp、php頁面,即使是有著良好的程序寫作習慣的程序員,其作品也幾乎無法閱讀。另一方面,動態(tài)web的開

36、發(fā)人員也在抱怨,將網(wǎng)站美工設計的靜態(tài)頁面和動態(tài)程序和并的過程是一個異常痛苦的過程。在jsp問世以后,servlet已經(jīng)完全可以被jsp代替,然而,事實是servlet在不再擔負動態(tài)頁面生成的任務以后,開始擔負起決定整個網(wǎng)站邏輯流程的任務。在邏輯關系異常復雜的網(wǎng)站中,借助于servlet和jsp良好的交互關系和javabeans的協(xié)助,完全可以將網(wǎng)站的整個邏輯結構放在servlet中,而將動態(tài)頁面的輸出放在jsp頁面中來完成。在這種開發(fā)方式中,一個網(wǎng)站可以有一個或幾個核心的servlet來處理網(wǎng)站的邏輯,通過調用jsp頁面來完成客戶端(通常是web瀏覽器)的請求。后面我們將可以看到,在j2ee模

37、型中,servlet的這項功能可以被ejb取代。(4)j2ee開發(fā)模型 在j2ee開發(fā)模型中,整個系統(tǒng)可以分為三個主要的部分:1.視圖 視圖就是用戶界面部分,在web應用程序中也就是html、xml、jsp頁面。這個部分主要處理用戶看到的東西,動態(tài)的jsp部分處理了用戶可以看見的動態(tài)網(wǎng)頁,而靜態(tài)的網(wǎng)頁則由html、xml輸出。2.控制器 控制器負責網(wǎng)站的整個邏輯。它用于管理用戶與視圖發(fā)生的交互??梢詫⒖刂破飨胂蟪商幵谝晥D和數(shù)據(jù)之間,對視圖如何與模型交互進行管理。通過使視圖完全獨立于控制器和模型,就可以輕松替換前端客戶程序,就是說,網(wǎng)頁制作人員將可以獨立自由地改變web頁面而不用擔心影響這個基于

38、web的應用程序的功能。在j2ee中,控制器的功能一般是由servlet 、javabeans、enterprise javabeans中的sessionbean來擔當?shù)摹?.模型 模型就是應用業(yè)務邏輯部分,這一部分的主要角色是enterprise javabeans,借助于ejb強大的組件技術和高校級的管理控制,開發(fā)人員可以輕松創(chuàng)建出可重用的業(yè)務邏輯模塊。2.4javabean技術介紹2.4.1什么是javabeanjavabean是描述java的軟件組件模型,有點類似于microsoft的com組件概念。在java模型中,通過javabean可以無限擴充java程序的功能,通過javabe

39、an的組合可以快速的生成新的應用程序。對于程序員來說,最好的一點就是javabean可以實現(xiàn)代碼的重復利用,另外對于程序的易維護性等等也有很重大的意義。javabean通過java虛擬機(java virtual machine)可以得到正確的執(zhí)行,運行javabean最小的需求是jdk1.1或者以上的版本。javabean傳統(tǒng)的應用在于可視化的領域,如awt下的應用。自從jsp誕生后,javabean更多的應用在了非可視化領域,在服務器端應用方面表現(xiàn)出來了越來越強的生命力。2.4.2javabean的特點javabean 是與平臺無關的,所以對于將來的解決方案,供應商可以輕易向不同用戶推出其

40、客戶機方的javabean,而不必創(chuàng)建或維護不同的版本。這些javabean可以與執(zhí)行學校功能(例如訂購、信用卡處理、電子匯款、存貨分配、運輸?shù)龋┑膃jb配合使用。這里有巨大潛力,而這正是組件代理(websphere application server 高校版)設計提供的那種潛力。javabean是一種組件,它在內部有接口或有與其相關的屬性,以便不同人在不同時間開發(fā)的bean可以詢問和集成??梢詷嫿ㄒ粋€bean,而在以后構造時將其與其它bean綁定。這種過程提供了先構建,然后重復使用的方法,這就是組件的概念??梢詫⑦@種單一應用程序部署成獨立程序、activex組件或在瀏覽器中。javabea

41、n因其外部接口(即屬性接口)而與純對象不同。這種接口允許工具讀取組件要執(zhí)行的功能,將其與其它bean掛鉤,以及將其插入其它環(huán)境。javabean設計成對單一進程而言是本地的,它們在運行時通??梢?。這種可視組件可能是按鈕、列表框、圖形或圖表,但這不是必需的。2.5jdbc技術2.5.1jdbc簡介jdbc api由java編寫的一組接口和類組成,為開發(fā)者提供通過應用開發(fā)訪問數(shù)據(jù)庫的工具/接口。作為低端接口,jdbc需要直接使用sql命令語句對數(shù)據(jù)庫進行操作。此外,通過jms、ejb以及容器持續(xù)等方式,jdbc可以實現(xiàn)高層調用,即不直接通過sql操作數(shù)據(jù)庫。bea提供兩種jdbc連接方式,即兩層方

42、式和多次驅動方式。所謂兩層方式即java應用客戶端直接訪問數(shù)據(jù)庫,多層則通過jdbcpool、rmi-driver或者jts實現(xiàn)。2.5.2jdbc類定義下面是在weblogic中常用的jdbc類: jdbc 類描述driver每個驅動程序包都必須提供,用于創(chuàng)建driver和database之間的連接,并提供數(shù)據(jù)庫連接相關信息。 datasource描述dbms或其它數(shù)據(jù)源細節(jié),用于和數(shù)據(jù)源創(chuàng)建連接。 statement向數(shù)據(jù)庫系統(tǒng)發(fā)送簡單的sql語句。 preparedstatement繼承statement,用于執(zhí)行pre-compiled sql語句。 callablestatement

43、繼承preparedstatement,用于對數(shù)據(jù)庫存儲過程進行調用(可帶參數(shù))。 resultset結果集,包含sql查詢語句執(zhí)行結果,提供結果查詢方法。 resultsetmetadata體統(tǒng)結果集中行列對象的類型、屬性等信息。 databasemetadata提供數(shù)據(jù)庫系統(tǒng)整體信息,返回單值或結果集。 clobsbuilt-in 類型,在行中存儲列字符型大對象。 blobsbuilt-in 類型,在數(shù)據(jù)庫表中存儲列二進制大對象。 jdbc 2.0支持: weblogic server使用jdk,支持jdbc。 平臺支持: 具體平臺支持取決于不同數(shù)據(jù)庫廠商提供的數(shù)據(jù)庫(dbms)及其驅動。

44、3 軟件需求分析3.1功能需求3.1.1應用需求分析教育是科學之本,隨著我國教育的普及和當前全球范圍的知識經(jīng)濟的突飛猛進,一套高質量高效率的學生選課信息系統(tǒng)更是必不可少,當前不僅是我國還是海外其他國家,均把學校教育放在戰(zhàn)略地位,投入巨大的人力物力研制各種教育模式,其中,學生選課信息系統(tǒng)的開發(fā)是首當其沖。一套好的管理系統(tǒng)是良好學習環(huán)境的組織者。由于信息系統(tǒng)數(shù)據(jù)量大,傳統(tǒng)的人工操作不僅效率低,準確性不高,而且其完整性,保密性均得不到保證。此信息管理系統(tǒng)可以實現(xiàn)學生信息的高效查詢,修改,刪除等操作,使學生信息關系系統(tǒng)化,規(guī)范化和自動化。3.1.2功能劃分該網(wǎng)上選課系統(tǒng)雖然規(guī)模較小,但是具備如下功能模

45、塊:前端顯示的jsp頁面應有軟件分類目錄、軟件內容介紹、登陸、學生管理、教師管理、課程信息管理和查詢統(tǒng)計以及一個示意性的提交功能。按照前臺與后臺的區(qū)別,還應該細分為業(yè)務邏輯和表現(xiàn)邏輯。即前端的jsp頁面調用javabean來實踐數(shù)據(jù)庫操作等功能。對于javabean部分,就應該表現(xiàn)業(yè)務實體的一些主要功能操作,例如增加、刪除和修改相應信息、清空所有信息、登錄及一些存儲信息的數(shù)據(jù)實體。3.1.3功能描述該網(wǎng)站系統(tǒng)首先對于為登錄用戶允許進行學校信息查詢,可以查看軟件詳細內容的顯示。如果想進行查看其它的信息必須進行登錄,如果沒有用戶號和密碼,可以首先進行注冊,登錄后可以查看軟件分類目錄,軟件分類目錄包

46、含一個層次,每個目錄下保存具體的軟件詳細信息,用戶可以按照分類載瀏覽器中查找相應的信息。3.1.4需求任務考慮到高校應用環(huán)境中人員多,訪問量大,訪問相對集中等特點,因此結合高校特點開發(fā)一套適合高校課程選修管理的信息系統(tǒng)。選課系統(tǒng)是從高校的角度出發(fā)設計的,其中主要的功能模塊體現(xiàn)在一下幾個方面:1學生信息管理 可以查看課程信息,根據(jù)課程信息選課并在我的課程中查看我已選的課程。2教師信息管理 老師可以添加課程,讓學生可以看到自己的課程。3課程信息管理 管理員可以刪除學生和老師的信息,也可以添加學生和老師的信息,管理員可以添加課程信息還可以給課程設定選課的人數(shù)。4查詢統(tǒng)計 管理員可以根據(jù)課程名查詢選該

47、課的學生信息并打印。3.1.5設計的基本思想設計思想遵循以下幾點:1采用b/s模式進行開發(fā),其優(yōu)點是后臺與前臺處理層次分明,而且符合眾多已經(jīng)習慣網(wǎng)頁方式的用戶。2采用面向對象的開發(fā)與設計理念。運用面向對象技術的前提是對整體系統(tǒng)的高度和準確抽象,通過它可以保證系統(tǒng)良好的框架,進而帶來產品較強的穩(wěn)定性和運行效率。3采用模塊化設計。模塊化設計要求將整個系統(tǒng)劃分成基于小的模塊,有利于代碼的重載,簡化設計和實現(xiàn)過程。4簡單方便的系統(tǒng)界面。設計簡單友好的系統(tǒng)界面,方便用戶較快的適應系統(tǒng)的操作。5速度優(yōu)先原則。由于此工具最重要的評測標準就是速度,因此在設計過程中,具體過程盡量做到資源占用少,速度快。6設計既

48、要突出重點,又要細致周到。要符合設計需求,在有可能改進的地方進行擴充,使系統(tǒng)更適應用戶的需要。3.1.6性能需求1系統(tǒng)的安全性本學生選課信息系統(tǒng)在管理權限上要嚴格進行控制,具體要求如下:想登錄學生選課信息系統(tǒng)進行操作,必須有操作權限,沒有權限的用戶不能通過任何方式登錄系統(tǒng)查看系統(tǒng)的任何信息和數(shù)據(jù),以確保系統(tǒng)的嚴密性和安全性。2數(shù)據(jù)的完整性(1)各種記錄信息的完整性,信息記錄內容不能為空。(2)各種數(shù)據(jù)間相互聯(lián)系的正確性。(3)相同數(shù)據(jù)在不同記錄中的一致性。3.1.7界面需求界面設計目前已經(jīng)成為評價軟件質量的一條重要指標,一個好的用戶界面可以增加用戶使用系統(tǒng)的信心和興趣,提高工作效率,jsp技術

49、是用java語言作為腳本語言的,jsp網(wǎng)頁為整個服務器端的java庫單元提供了一個接口來服務于http的應用程序。 創(chuàng)建動態(tài)頁面非常方便。用戶界面是指軟件系統(tǒng)與用戶交互的接口,通常包括輸出、輸入、人-機對話的界面格式等。3.2外部接口需求3.2.1用戶界面系統(tǒng)里面采用非常友好容易操作的界面,方便用戶進行操作訪問。因此程序采用固定的布局,每個頁面的固定部分都單獨實現(xiàn)成為一個jsp程序,然后在每個具體的頁面中包含他們,這樣既保證了程序的布局統(tǒng)一,又能簡化程序設計和調試。這些固定部分的jsp程序應包括:頁面的head部分,定義了連接樣式;頁面頂部區(qū)域,定義頁面的主菜單;頁面的左邊部署的區(qū)域,內容為軟

50、件目錄列表;頁面的底部區(qū)域。3.2.2軟件相應接口本系統(tǒng)具備良好的平臺無關性,無論是在nt系統(tǒng),linux系統(tǒng)還是unix系統(tǒng)上,都能正常運行而不需要改任何代碼。對www服務器沒有特別的要求或限制。對系統(tǒng)數(shù)據(jù)庫沒有特別的限制,但要求具備jdbc接口,目前市場上的絕大部分數(shù)據(jù)庫都具備這一接口。對cpu、硬盤容量和最小內存沒有特別的要求。要求系統(tǒng)的應用服務器具備支持java組件運行的功能。前臺使用 ms ie4.0以上的瀏覽器。本系統(tǒng)的客戶端可運行在任何裝有www瀏覽器 microsoft internetexplorer5.0上或其版本以上的主機之上,進行完美運行。4 軟件概要設計4.1總體設計

51、4.1.1處理流程整個程序從用戶訪問進入index.jsp開始,用戶可以進行網(wǎng)上選課系統(tǒng)信息瀏覽,但是要進行其他操作就要進行登錄,如果沒有注冊,首先需要注冊,登錄后可以瀏覽學校網(wǎng)站信息并且可以登錄增加、修改、刪除記錄操作。4.1.2總體結構與模塊外部設計要求系統(tǒng)程序設計模塊化和面向對象化的關鍵就是將表現(xiàn)和邏輯剝離,對于該jsp程序,剝離的關鍵技術就是javabean。程序的總體結構就是呈現(xiàn)給用戶的jsp頁面和邏輯部分javabean。整個程序的處理流程采用了jsp“簡單的2/1層模型”,部分程序使用了“重定向模型”和“包含模型”。對于“2/1模型”是jsp程序直接訪問外部資源(入數(shù)據(jù)庫),完成

52、對可戶的請求服務。對于“重定向模型”是在“2/1模型”之上發(fā)展起來的,當程序中來自客戶端的請求變的復雜時,專門使用一個初始jsp程序來處理客戶的請求,然后按照需要,將客戶端請求重定向到其他jsp程序去處理,有它們生成發(fā)送到客戶端的響應。對于“包含模型”初始的jsp程序既處理客戶端的請求,頁負責生成對客戶端的響應,但是在處理過程中可能會包含一些其他的jsp程序或其他文件,包含可以是靜態(tài)包含頁可以是動態(tài)包含,動態(tài)包含的效果就象是進行了一次過程調用。4.1.3功能需求設計1.學生模塊(1)學生首先要登錄到系統(tǒng)。登錄的時候要求輸入學號和密碼。該密碼由管理員設置,通過各學院教學干事轉發(fā)給個學生用戶。在輸

53、入學號和密碼之后,系統(tǒng)將驗證學號和密碼是否正確,如果驗證成功,就使學生處于登錄狀態(tài)。否則,系統(tǒng)顯示學號或密碼錯誤的信息。(2)學生登錄到系統(tǒng)以后,可以使用選課功能。各門課程由各個教師來開設,學生在系統(tǒng)中可以查看到所有開設的可選的課程,然后進行選擇。選擇過的課程不會再出現(xiàn)在學生可選的課程欄中。2.教師模塊(1)教師首先要登錄到系統(tǒng),登錄的時候要求輸入教師編號和密碼。該密碼由管理員設置,通過各學院教學干事轉發(fā)給各教師用戶。再輸入教學編號和密碼之后,系統(tǒng)將驗證教學編號和密碼是否正確。如果驗證成功,就使教師處于登錄狀態(tài)。否則,系統(tǒng)顯示教學編號或密碼錯誤的信息。(2)教師登錄到系統(tǒng)以后,可以使用開設課程

54、的功能。在開設課程的時候,要求輸入課程編號、課程名信息。提交信息以后,系統(tǒng)會到數(shù)據(jù)庫中驗證該課程是否已經(jīng)開設過。若沒有,則同意開設該課程。3.管理員模塊(1)管理員首先要登錄到系統(tǒng),登錄的時候要求輸入管理員賬號和密碼。之后系統(tǒng)將驗證管理員賬號和密碼是否正確。如果驗證通過,就使管理員處于登錄狀態(tài)。否則,系統(tǒng)將顯示管理員賬號或密碼錯誤的信息。(2)管理員登錄到系統(tǒng)后,可以進行學生管理。包括使用添加學生帳號的功能。在添加的過程中,要求輸入學生學號、密碼、姓名、院系和專業(yè)信息。提交以后,系統(tǒng)會到數(shù)據(jù)庫去驗證該學生賬號是否已經(jīng)建立。如果還沒有建立,則建立該學生帳號。也可以使用刪除學生帳號的功能。系統(tǒng)在刪除學生帳號之前,會先刪除該賬號所選的所有課程,然后再刪除該帳號。(3)管理員可以進行教師管理。使用添加教師帳號的功能。在添加的過程中,要求輸入教師編號、密碼、姓名和院系信息。提交信息以后,系統(tǒng)回到數(shù)據(jù)庫中去驗證該教師賬號是否已經(jīng)存在。如果不存在,則建立該教師帳號。也可以刪除該教師賬號。(4)管理員進行課程管理。根據(jù)教學安排決定該課程允許報名的的名額, 當超出人數(shù)時,該課程將不再出現(xiàn)在學生可選課程中。(5)統(tǒng)

溫馨提示

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

最新文檔

評論

0/150

提交評論