版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 計(jì)算機(jī)組成原理精品課程網(wǎng)站建設(shè)</p><p> —前臺(tái)界面和留言板的設(shè)計(jì)</p><p> 摘 要:隨著科技的不斷發(fā)展,互聯(lián)網(wǎng)正以空前的速度,滲透到世界的每一個(gè)角落。教育的網(wǎng)絡(luò)化建設(shè)已成為我國(guó)信息化建設(shè)一個(gè)重中之重。如何利用互聯(lián)網(wǎng)絡(luò)這一強(qiáng)大的信息資源,更好地服務(wù)于新世紀(jì)的學(xué)校教育事業(yè),不僅成為當(dāng)代教育專家的一道嶄新研究課題,也成為教育行政部門和廣大學(xué)校的一項(xiàng)緊迫
2、任務(wù)。</p><p> 本系統(tǒng)采用Dreamweaver作為前臺(tái)設(shè)計(jì)工具,后臺(tái)設(shè)計(jì)采用JSP技術(shù),并且使用Oracle數(shù)據(jù)庫(kù)作為開發(fā)工具,通過(guò)JDBC技術(shù)訪問(wèn)數(shù)據(jù)庫(kù),采用struts2+spring+ibatis三層框架,來(lái)提供一個(gè)供學(xué)生查看并下載課件的界面,同時(shí),系統(tǒng)的在線考試模塊可供學(xué)生在線答題,在線估分,可以讓學(xué)生在對(duì)知識(shí)有一定了解的基礎(chǔ)上,去完成相應(yīng)的客觀測(cè)試題來(lái)檢測(cè)直接的學(xué)習(xí)情況,至于問(wèn)答和計(jì)算這類
3、的主觀性題目,學(xué)生也可以將答案發(fā)送到教課老師的郵箱,供老師查看和點(diǎn)評(píng),學(xué)生可以通過(guò)老師審閱之后來(lái)核對(duì)與正確答案之間的差別。另外,留言板這一塊兒也是本設(shè)計(jì)的一個(gè)亮點(diǎn),本校用戶可以直接通過(guò)學(xué)號(hào)和密碼(學(xué)生)或是工號(hào)和密碼(老師)進(jìn)入登錄界面進(jìn)行留言,而外校學(xué)生只有查詢留言的功能,并不能夠發(fā)表留言,這樣就使得本校學(xué)生都可以將自己學(xué)習(xí)中遇到的難點(diǎn)以及不懂的地方,給老師留言,而老師在登錄之后就可以看到學(xué)生發(fā)表的留言從而對(duì)問(wèn)題進(jìn)行答疑,因?yàn)槊總€(gè)學(xué)生
4、都有可以查看留言的權(quán)限,所以各個(gè)學(xué)生之間也可以通過(guò)在線留言相互討論遇到的問(wèn)題,從而可以實(shí)現(xiàn)學(xué)生和老師以及學(xué)生和學(xué)生之間的互動(dòng),進(jìn)而幫助同學(xué)解決學(xué)習(xí)中遇到的問(wèn)題。</p><p> 本文通過(guò)對(duì)精品課程網(wǎng)站的設(shè)計(jì)和系統(tǒng)的實(shí)現(xiàn)的描述,詳細(xì)闡述了HTML、JSP等相關(guān)技術(shù),采用struts2+spring+ibatis三層架構(gòu)來(lái)實(shí)現(xiàn)用戶界面的登錄,通過(guò)和Oracle數(shù)據(jù)庫(kù)中建的表來(lái)完成對(duì)用戶信息的讀取以及檢測(cè)用戶權(quán)限,
5、從而實(shí)現(xiàn)網(wǎng)絡(luò)課程建設(shè)中一些基本功能,查看并下載課件和教學(xué)大綱,在線測(cè)試和評(píng)分,以及在線留言。基本上能夠?qū)崿F(xiàn)一個(gè)網(wǎng)絡(luò)課程建設(shè)應(yīng)該實(shí)現(xiàn)的常見功能。</p><p> 關(guān)鍵詞:網(wǎng)站;課程;JSP;B/S;在線測(cè)試</p><p> Principles of computer composition course website construction</p><p&g
6、t; —Interface and message board design</p><p> Abstract: With the continuous development of science and technology, the Internet is at an unprecedented speed, penetrating into every corner of the world. E
7、ducation network construction of informatization construction in our country has become a priority. How to use the Internet this powerful information resources, better services in the new century school education, not on
8、ly become the contemporary education specialist in a new research topic, also become the educational administrative depart</p><p> The front of the system adopts Dreamweaver as the tool design, background d
9、esign with JSP technology and Oracle database development tool, through the JDBC technology to access the database, using struts2+spring+ibatis three layer frame combination, to provide an interface for students to view,
10、 download software, in addition, system provides online examination system for the students to answer online, simulation test, and provides objective questions online score function, and let the students t</p><
11、;p> The high-quality curriculum website design and the system realization , elaborate on the HTML, JSP and other related technologies, using struts2+spring+ibatis three layer architecture to design user login interfa
12、ce , Oracle as the database that completes the information for users landing and detecting user permissions, the goals to realize basic function of the network course construction , then view and download course resource
13、s and teaching syllabus, online test and evaluate score, as well as</p><p> Key words: Web; curriculum; JSP; B / S; online test</p><p><b> 目 錄</b></p><p><b>
14、摘 要 I</b></p><p> Abstract II</p><p><b> 1.緒論 1</b></p><p> 1.1課題研究的背景1</p><p> 1.2 課題研究的意義1</p><p> 1.3 課題研究的內(nèi)容1</p>
15、<p> 1.4 本人的主要工作1</p><p> 2 系統(tǒng)開發(fā)技術(shù)及運(yùn)行環(huán)境簡(jiǎn)介3</p><p> 2.1 HTML語(yǔ)言3</p><p> 2.2 JSP技術(shù)4</p><p> 2.2.1 JSP的簡(jiǎn)介4</p><p> 2.2.2 JSP的工作原理5</p>
16、;<p> 2.2.3 JSP的優(yōu)勢(shì)7</p><p> 2.3 Struts概述7</p><p> 2.3.1 Struts的由來(lái)和發(fā)展7</p><p> 2.3.2 Struts的優(yōu)缺點(diǎn)8</p><p> 2.4 Spring概述9</p><p> 2.4.1 Sprin
17、g的由來(lái)和發(fā)展9</p><p> 2.4.2 Spring的優(yōu)缺點(diǎn) 9</p><p> 2.5 Ibatis概述10</p><p> 2.5.1 Ibatis的由來(lái)和發(fā)展 10</p><p> 2.5.2 Ibatis的優(yōu)缺點(diǎn) 10</p><p> 2.6 JDBC11</p
18、><p> 2.7 Oracle 10g12</p><p> 2.8 MyEclipse8.613</p><p> 2.9 Tomcat7.0 13</p><p> 2.10 JDK1.614</p><p><b> 3系統(tǒng)分析17</b></p><
19、;p> 3.1 系統(tǒng)的性能要求17</p><p> 3.2 系統(tǒng)功能需求分析17</p><p> 3.2.1 功能描述18</p><p> 3.3 用例模型19</p><p> 3.3.1 學(xué)生用戶用例圖19</p><p> 3.3.2 教師用戶用例圖19</p>
20、<p> 3.3.3 管理員用例圖20</p><p><b> 3.4活動(dòng)圖20</b></p><p> 第四章 系統(tǒng)設(shè)計(jì)22</p><p> 4.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)22</p><p> 4.1.1 系統(tǒng)設(shè)計(jì)目標(biāo) 22</p><p> 4.1.2 系統(tǒng)功能
21、結(jié)構(gòu)分析 22</p><p> 4.1.3 系統(tǒng)功能結(jié)構(gòu)圖 23</p><p> 4.2 系統(tǒng)功能模塊的詳細(xì)設(shè)計(jì)24</p><p> 4.2.1 用戶登錄模塊 24</p><p> 4.2.2 課程資源查詢模塊 24</p><p> 4.2.3 管理員模塊 24</p&g
22、t;<p> 4.3 系統(tǒng)數(shù)據(jù)模型設(shè)計(jì) 25</p><p> 4.3.1 數(shù)據(jù)表 25</p><p> 4.4 數(shù)據(jù)庫(kù)中表的設(shè)計(jì) 25</p><p> 4.4.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 26</p><p> 4.4.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 28</p><p> 4.
23、4.3 物理模型設(shè)計(jì) 28</p><p> 4.5 部分源代碼 29</p><p> 4.5.1 前臺(tái)查看課件源代碼 29</p><p> 4.5.2 前臺(tái)下載課件源代碼 30</p><p> 4.5.3 前臺(tái)查看留言板界面源代碼 31</p><p> 4.5.4 前臺(tái)在線留言源
24、代碼 32</p><p> 5.系統(tǒng)實(shí)施 34</p><p> 5.1 應(yīng)用系統(tǒng)的開發(fā) 34</p><p> 5.1.1 系統(tǒng)首頁(yè) 34</p><p> 5.1.2 課程說(shuō)明 34</p><p> 5.1.3 留言說(shuō)明 34</p><p> 5.2
25、 系統(tǒng)的實(shí)現(xiàn) 34</p><p> 5.2.1 主窗口界面 34</p><p> 5.2.2 課程負(fù)責(zé)人查看界面 35</p><p> 5.2.3 教學(xué)環(huán)境查看界面 35</p><p> 5.2.4 教材建設(shè)查看界面 36</p><p> 5.2.5 課程特色查看界面 36&
26、lt;/p><p> 5.2.6專業(yè)介紹查看界面 37</p><p> 5.2.7授課教案查看下載界面 38</p><p> 5.2.8 教學(xué)大綱查看下載界面 39</p><p> 5.2.9 留言板界面 40</p><p> 5.2.10 添加留言界面 40</p>&
27、lt;p> 6.精品課程網(wǎng)站系統(tǒng)的測(cè)試 42</p><p> 6.1軟件測(cè)試 42</p><p> 6.1.1 軟件測(cè)試簡(jiǎn)介 42</p><p> 6.1.2 功能測(cè)試 43</p><p> 6.2 測(cè)試的不足之處 45</p><p><b> 結(jié)束語(yǔ) 46&
28、lt;/b></p><p><b> 參考文獻(xiàn) 47</b></p><p><b> 致 謝 48</b></p><p><b> 附 錄 49</b></p><p> 附錄1:英文原文 49</p><p> 附
29、錄2:中文譯文 53</p><p> 附錄3:核心代碼 56</p><p><b> 緒論</b></p><p><b> 課題研究的背景</b></p><p> 由于網(wǎng)絡(luò)通訊的迅速發(fā)展,信息的發(fā)布和交流開始越來(lái)越廣泛,利用計(jì)算機(jī)、網(wǎng)絡(luò)管理和信息采集勢(shì)在必行。對(duì)于目前的人們來(lái)
30、說(shuō),利用計(jì)算機(jī)互聯(lián)網(wǎng)進(jìn)行網(wǎng)上辦公、網(wǎng)上日常事務(wù)管理、網(wǎng)上財(cái)務(wù)管理、網(wǎng)上教學(xué)管理等,是適應(yīng)現(xiàn)代化教學(xué)的一個(gè)基礎(chǔ)和要求、是推動(dòng)高校管理的科學(xué)化、規(guī)范化、科學(xué)化的必要條件。</p><p> 1.2 課題研究的意義</p><p> 一個(gè)完善的網(wǎng)上精品課程系統(tǒng),應(yīng)該是方便管理和操作的,所以該系統(tǒng)還有一個(gè)功能強(qiáng)大的后臺(tái)管理系統(tǒng):可以進(jìn)行學(xué)生管理,資料管理,課件管理。目前應(yīng)用于動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)的技術(shù)
31、有很多,精品課程網(wǎng)站系統(tǒng)中主要采用了JSP技術(shù)和數(shù)據(jù)庫(kù)技術(shù)的整合應(yīng)用,采用的數(shù)據(jù)庫(kù)是Oracle數(shù)據(jù)庫(kù)。系統(tǒng)前臺(tái)頁(yè)面采用動(dòng)態(tài)頁(yè)面和靜態(tài)頁(yè)面結(jié)合的方式,利用JSP與數(shù)據(jù)庫(kù)結(jié)合的技術(shù)建立數(shù)據(jù)庫(kù)查詢管理系統(tǒng),采用交互式的動(dòng)態(tài)的web畫面來(lái)實(shí)現(xiàn)課件、文章、用戶等遠(yuǎn)程瀏覽及管理,以及在線考試系統(tǒng)的答題與評(píng)分。</p><p> 1.3 課題研究的內(nèi)容</p><p> 精品課程網(wǎng)站系統(tǒng)能夠?qū)崿F(xiàn)基
32、于校園網(wǎng)絡(luò)環(huán)境下的資源管理,以便有效地管理上傳的資源,構(gòu)建適合的課程資源庫(kù)。系統(tǒng)采用B/S結(jié)構(gòu),即瀏覽器/服務(wù)器結(jié)構(gòu)。用戶通過(guò)瀏覽器向服務(wù)器發(fā)出請(qǐng)求,服務(wù)器對(duì)瀏覽器的請(qǐng)求進(jìn)行處理,將用戶所需信息返回到瀏覽器上。客戶機(jī)無(wú)需安裝軟件,只需在服務(wù)器上進(jìn)行簡(jiǎn)單的設(shè)置,數(shù)據(jù)的請(qǐng)求和返回結(jié)果均以網(wǎng)頁(yè)形式完成,方便系統(tǒng)的管理,適合管理員的使用習(xí)慣。系統(tǒng)平臺(tái)設(shè)計(jì)時(shí),采用的是Myeclipse為開發(fā)工具,利用JSP技術(shù),以O(shè)racle數(shù)據(jù)庫(kù)作為后臺(tái)數(shù)據(jù)庫(kù)
33、,WEB服務(wù)采用TOMCAT實(shí)現(xiàn)。</p><p> 1.4 本人的主要工作</p><p> 本系統(tǒng)包括:前臺(tái)和后臺(tái)兩部分,前臺(tái)包括:【首頁(yè)】【課程負(fù)責(zé)人】【教學(xué)團(tuán)隊(duì)】【教材建設(shè)】【教學(xué)環(huán)境】【課程特色】【專業(yè)介紹】【教學(xué)大綱】【授課教案】【參考文獻(xiàn)】,后臺(tái)包括:【在線測(cè)試】【留言板】,用戶只需要通過(guò)瀏覽器訪問(wèn)就可以實(shí)現(xiàn)操作,操作簡(jiǎn)單靈活。</p><p>
34、 其中前臺(tái)界面設(shè)計(jì)以及留言板模塊的設(shè)計(jì)是我負(fù)責(zé)的部分。</p><p> 2 系統(tǒng)開發(fā)技術(shù)及運(yùn)行環(huán)境簡(jiǎn)介</p><p> 通過(guò)對(duì)本系統(tǒng)功能及應(yīng)用各方面的綜合分析,本網(wǎng)站采用Dreamweaver作為前臺(tái)設(shè)計(jì)工具,后臺(tái)設(shè)計(jì)采用JSP技術(shù)及Oracle數(shù)據(jù)庫(kù)開發(fā)工具,通過(guò)JDBC技術(shù)訪問(wèn)數(shù)據(jù)庫(kù),最終建設(shè)成一個(gè)有持久生命力兼容性、安全性、可擴(kuò)展性良好并可以滿足師生獲取信息和服務(wù)的教學(xué)網(wǎng)站。
35、下面對(duì)本網(wǎng)站涉及到的技術(shù)進(jìn)行簡(jiǎn)要的介紹。</p><p> 2.1 HTML語(yǔ)言</p><p> HTML(Hyper Text Markup Language,超文本標(biāo)記語(yǔ)言),它是構(gòu)成網(wǎng)頁(yè)的基礎(chǔ),因?yàn)槌绦驘o(wú)法控制瀏覽器的內(nèi)存,與瀏覽器之間只有下載網(wǎng)頁(yè)及上傳數(shù)據(jù)的關(guān)系,所以對(duì)HTML語(yǔ)法必須有一定的了解。</p><p> 主要特點(diǎn)是設(shè)計(jì)HTML語(yǔ)言的目的
36、是為了能把存放在一臺(tái)電腦中的文本或圖形與另一臺(tái)電腦中的文本或圖形方便地聯(lián)系在一起,形成有機(jī)的整體,人們不用考慮具體信息是在當(dāng)前電腦上還是在網(wǎng)絡(luò)的其它電腦上。只需使用鼠標(biāo)在某一文檔中點(diǎn)取一個(gè)圖標(biāo),Internet就會(huì)馬上轉(zhuǎn)到與此圖標(biāo)相關(guān)的內(nèi)容上去,而這些信息可能存放在網(wǎng)絡(luò)的另一臺(tái)電腦中。 HTML文本是由HTML命令組成的描述性文本,HTML命令可以說(shuō)明文字、圖形、動(dòng)畫、聲音、表格、鏈接等。HTML的結(jié)構(gòu)包括頭部(Head)、主體(Bod
37、y)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說(shuō)明的具體內(nèi)容[1]。 </p><p> 另外,HTML是網(wǎng)絡(luò)的通用語(yǔ)言,一種簡(jiǎn)單、通用的全置標(biāo)記語(yǔ)言。它允許網(wǎng)頁(yè)制作人建立文本與圖片相結(jié)合的復(fù)雜頁(yè)面,這些頁(yè)面可以被網(wǎng)上任何其他人瀏覽到,無(wú)論使用的是什么類型的電腦或?yàn)g覽器。神奇嗎?一點(diǎn)都不神奇,因?yàn)楝F(xiàn)在你看到的就是這種語(yǔ)言寫的頁(yè)面。 </p><p> 我們?yōu)g覽一個(gè)頁(yè)面,要
38、先把頁(yè)面所對(duì)應(yīng)的文件從提供這個(gè)文件的計(jì)算機(jī)通過(guò)Internet傳送到我們自己的計(jì)算機(jī)中,頁(yè)面對(duì)應(yīng)的文件不再是普通的“文本文件”,文件中除包含文字信息外,還包再由WWW瀏覽器翻譯成為我們見到的有文字、有圖形甚至有聲音的頁(yè)面。這些WWW上的每個(gè)網(wǎng)頁(yè)都對(duì)應(yīng)一個(gè)文件。</p><p> 和普通文本相比,超文本文件中多了一些對(duì)文件內(nèi)容的注釋,這些注釋表括了一些具體的鏈接。這些包含鏈接的文件被稱為超文本文件。文本文件要遵從
39、一個(gè)嚴(yán)格的標(biāo)準(zhǔn),這個(gè)標(biāo)準(zhǔn)就是超文本標(biāo)識(shí)語(yǔ)言HTML[2]。我們也用戶計(jì)算機(jī)應(yīng)做出何種反應(yīng)的說(shuō)明,這些注釋的內(nèi)容經(jīng)過(guò)瀏覽器的翻譯后就成了不同的操作。為了使各種不同類型的WWW服務(wù)器都能正確地認(rèn)識(shí)和執(zhí)行,可以利用這種語(yǔ)言來(lái)編寫超文本文件,在Internet上制作自己的WWW的主頁(yè)。明了當(dāng)前文字顯示的位置、顏色等信息,更重要的是,在有些注釋中包含了[3]。</p><p><b> 2.2 JSP技術(shù)<
40、;/b></p><p> 2.2.1 JSP的簡(jiǎn)介 </p><p> JSP(JavaServer Pages)是一種基于Java的腳本技術(shù)。在JSP 的眾多優(yōu)點(diǎn)之中,其中之一是它能將HTML編碼從Web頁(yè)面的業(yè)務(wù)邏輯中有效地分離出來(lái)。用JSP訪問(wèn)可重用的組件,如Servlet、JavaBean和基于Java的Web應(yīng)用程序。JSP還支持在Web頁(yè)面中直接嵌入J
41、ava代碼??捎脙煞N方法訪問(wèn)JSP文件:瀏覽器發(fā)送JSP文件請(qǐng)求、發(fā)送至Servlet的請(qǐng)求。 JSP文件訪問(wèn)Bean或其它能將生成的動(dòng)態(tài)內(nèi)容發(fā)送到瀏覽器的組件。圖2.1說(shuō)明了該 JSP訪問(wèn)模型。當(dāng)Web服務(wù)器接收到一個(gè)JSP文件請(qǐng)求時(shí),服務(wù)器將請(qǐng)求發(fā)送至WebSphere應(yīng)用服務(wù)器。WebSphere應(yīng)用服務(wù)器對(duì)JSP文件進(jìn)行語(yǔ)法分析并生成Java源文件(被編譯和執(zhí)行為Servlet)。Java源文件的生成和編譯僅在初次調(diào)用Se
42、rvlet時(shí)發(fā)生,除非已經(jīng)更新了原始的JSP文件。在這種情況下,WebSphere應(yīng)用服務(wù)器將檢測(cè)所做的更新,并在執(zhí)行它之前重新生成和編譯Servlet。</p><p> 圖2.1 瀏覽器發(fā)送 JSP 文件請(qǐng)求</p><p> 發(fā)送至Servlet的請(qǐng)求生成動(dòng)態(tài)內(nèi)容,并調(diào)用JSP文件將內(nèi)容發(fā)送到瀏覽器。圖2.2說(shuō)明了該訪問(wèn)模型。該訪問(wèn)模型使得將內(nèi)容生成從內(nèi)容顯示中分離出來(lái)更為方便。
43、WebSphere應(yīng)用服務(wù)器支持HttpServiceRequest對(duì)象和HttpServiceResponse對(duì)象的一套新方法。這些方法允許調(diào)用的Servlet將一個(gè)對(duì)象放入(通常是一個(gè)Bean)請(qǐng)求對(duì)象中,并將該請(qǐng)求傳遞到另一個(gè)頁(yè)面(通常是一個(gè)JSP 文件)以供顯示。調(diào)用的頁(yè)面從請(qǐng)求對(duì)象中檢索Bean, 并用JSP來(lái)生成客戶機(jī)端的HTML[4]。</p><p> 圖2.2 JSP的工作原理1</p&
44、gt;<p> 自JSP推出后,眾多大公司都支持JSP技術(shù)的服務(wù)器,如IBM、Oracle、Bea公司等,所以JSP迅速成為商業(yè)應(yīng)用的服務(wù)器端語(yǔ)言。 </p><p> JSP可用一種簡(jiǎn)單易懂的等式表示為:HTML+Java=JSP。</p><p> Java Servlet是JSP技術(shù)的基礎(chǔ),JSP本身就是預(yù)先被編譯成Servlet,然后再運(yùn)行的,而且大型的Web應(yīng)
45、用程序的開發(fā)需要Java Servlet和JSP配合才能完成, Servlet其實(shí)和傳統(tǒng)的CGI程序和ISAPI、NSAPI等Web程序開發(fā)工具的作用是相同的,在使用Java Servlet以后,用戶不必再使用效率低下的CGI方式,也不必使用只能在某個(gè)固定Web服務(wù)器平臺(tái)運(yùn)行的API方式來(lái)動(dòng)態(tài)生成Web頁(yè)面。許多Web服務(wù)器都支持Servlet,即使不直接支持Servlet的Web服務(wù)器也可以通過(guò)附加的應(yīng)用服務(wù)器和模塊來(lái)支持Servle
46、t。得益于Java的跨平臺(tái)的特性,Servlet也是與平臺(tái)無(wú)關(guān)的,實(shí)際上,只要符合Java Servlet規(guī)范,Servlet是完全平臺(tái)無(wú)關(guān)且是Web服務(wù)器無(wú)關(guān)的。由于Java Servlet內(nèi)部是以線程方式提供服務(wù),不必對(duì)于每個(gè)請(qǐng)求都啟動(dòng)一個(gè)進(jìn)程,并且利用多線程機(jī)制可以同時(shí)為多個(gè)請(qǐng)求服務(wù),因此Java Servlet效率非常高。但Java Servlet也不是沒有缺點(diǎn),和傳統(tǒng)的CGI、ISAPI、NSAPI方式相同,Java Serv
47、l</p><p> 2.2.2 JSP的工作原理</p><p> 當(dāng)一個(gè)JSP文件第一次被請(qǐng)求的時(shí)候,JSP引擎(本身也是一個(gè)Servlet)首先會(huì)把這個(gè)JSP文件轉(zhuǎn)換成一個(gè)Java源文件。在轉(zhuǎn)換過(guò)程中如果發(fā)現(xiàn)JSP文件有語(yǔ)法錯(cuò)誤,轉(zhuǎn)換過(guò)程將中斷,并向服務(wù)端和客戶端輸出出錯(cuò)信息;如果轉(zhuǎn)換成功,JSP引擎用javac把該Java源文件編譯成相應(yīng)的.class文件并將該.class文件
48、加載到內(nèi)存中。</p><p> 其次創(chuàng)建一個(gè)該Servlet的實(shí)例,并執(zhí)行該實(shí)例的jspInit()方法(jspInit()方法在Servlet的生命周期中只被執(zhí)行一次)。然后創(chuàng)建并啟動(dòng)一個(gè)新的線程,新線程調(diào)用實(shí)例的jspService()方法。(對(duì)于每一個(gè)請(qǐng)求,JSP引擎會(huì)創(chuàng)建一個(gè)新的線程來(lái)處理該請(qǐng)求。如果有多個(gè)客戶端同時(shí)請(qǐng)求該JSP文件,則JSP引擎會(huì)創(chuàng)建多個(gè)線程,每個(gè)客戶端請(qǐng)求對(duì)應(yīng)一個(gè)線程)。</
49、p><p> 瀏覽器在調(diào)用JSP文件時(shí),Servlet容器會(huì)把瀏覽器的請(qǐng)求和對(duì)瀏覽器的回應(yīng)封裝成HttpServletRequest和HttpServletResponse對(duì)象,同時(shí)調(diào)用對(duì)應(yīng)的Servlet實(shí)例中的jspService()方法,把這兩個(gè)對(duì)象作為參數(shù)傳遞到j(luò)spService()方法中。jspService()方法執(zhí)行后會(huì)將HTML內(nèi)容返回給客戶端。</p><p> 如果J
50、SP文件被修改了,服務(wù)器將根據(jù)設(shè)置決定是否對(duì)該文件進(jìn)行重新編譯。如果需要重新編譯,則將編譯結(jié)果取代內(nèi)存中的Servlet,并繼續(xù)上述處理過(guò)程。如果在任何時(shí)候由于系統(tǒng)資源不足,JSP引擎將以某種不確定的方式將Servlet從內(nèi)存中移去。當(dāng)這種情況發(fā)生時(shí),jspDestroy()方法首先被調(diào)用, 然后Servlet實(shí)例便被標(biāo)記加入“垃圾收集”處理。</p><p> JSP的工作原理如圖2.3所示:</p&g
51、t;<p> 圖2.3 JSP的工作原理2</p><p> 2.2.3 JSP的優(yōu)勢(shì)</p><p> ?。?)一次編寫,到處運(yùn)行。在這一點(diǎn)上Java比PHP更出色,除了系統(tǒng)之外,代碼不用做任何更改。 </p><p> ?。?)系統(tǒng)的多平臺(tái)支持。基本上可以在所有平臺(tái)上的任意環(huán)境中開發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/PH
52、P的局限性是顯而易見的。 </p><p> (3)強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力。 </p><p> ?。?)多樣化和功能強(qiáng)大的開發(fā)工具支持。這一點(diǎn)與ASP很像,Java已經(jīng)有了許多非常優(yōu)秀的開發(fā)工具
53、,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下這些職員所用的計(jì)算機(jī)有Windows、Macintosh和UNIX等各種不同的操作系統(tǒng))。隨著越來(lái)越多的程序員開始使用Java編程語(yǔ)言,對(duì)從Java中便捷地訪問(wèn)數(shù)據(jù)庫(kù)的要求也在日益增加。 </p><p> 2.3 Struts概述</p><p> 2.3.1 Struts的由來(lái)和發(fā)展</p><
54、p> Struts 框架工具是 Apache 基金會(huì) Jakarta 項(xiàng)目中推出的一個(gè)子項(xiàng)目。Struts 在英文中是支架、支撐的意思,這也體現(xiàn)出 Struts 在開發(fā) Web 應(yīng)用程序過(guò)程所起到的重要作用, Struts 為 Web 應(yīng)用提供了通用的框架,讓開發(fā)人員可以把主要精力集中在如何解決實(shí)際業(yè)務(wù)問(wèn)題上,與此同時(shí) Struts 框架也允許開發(fā)人員根據(jù)實(shí)際需要進(jìn)行擴(kuò)展和定制,從而可以更好的適應(yīng)用戶的需求。采用 Struts
55、可以簡(jiǎn)化遵循 MVC 設(shè)計(jì)模式的 Web 應(yīng)用的開發(fā)工作,很好地實(shí)現(xiàn)代碼重用,使開發(fā)人員從一些繁瑣的工作中解脫出來(lái),快速開發(fā)能夠充分發(fā)揮 JSP/Servlet 優(yōu)點(diǎn)、并具有強(qiáng)可擴(kuò)展性的 Web 應(yīng)用??傊?Struts 的出現(xiàn)使得 Web 應(yīng)用的開發(fā)過(guò)程大大簡(jiǎn)化,從而能夠縮短開發(fā)周期、提高開發(fā)效率。 </p><p> Struts 架構(gòu)一經(jīng)推出,即受到 Java 開發(fā)群體的廣泛重視,從 2004 年開始逐
56、漸升溫,并日漸成為 Java 創(chuàng)建 Web 應(yīng)用開發(fā)的最流行的框架工具,在目前 Java Web 程序員的招聘要求中,幾乎都提出了對(duì) Struts 的要求,精通 Struts 架構(gòu)已經(jīng)成為 Java Web 程序員必備的技能。</p><p> 2.3.2 Struts的優(yōu)缺點(diǎn) </p><p><b> (1)優(yōu)點(diǎn)</b></p><
57、;p> Struts跟Tomcat、Turbine等諸多Apache項(xiàng)目一樣,是開源軟件,這是它的一大優(yōu)點(diǎn)。使開發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制。 </p><p> 除此之外,Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個(gè)方面:Taglib和頁(yè)面導(dǎo)航。Taglib是Struts的標(biāo)記庫(kù),靈活動(dòng)用,能大大提高開發(fā)效率。另外,就目前國(guó)內(nèi)的JSP開發(fā)者而言,除了使用JSP自帶的常用標(biāo)記外,很少開發(fā)自己的標(biāo)記
58、,或許Struts是一個(gè)很好的起點(diǎn)。 </p><p> 關(guān)于頁(yè)面導(dǎo)航,我認(rèn)為那將是今后的一個(gè)發(fā)展方向,事實(shí)上,這樣做,使系統(tǒng)的脈絡(luò)更加清晰。通過(guò)一個(gè)配置文件,即可把握整個(gè)系統(tǒng)各部分之間的聯(lián)系,這對(duì)于后期的維護(hù)有著莫大的好處。尤其是當(dāng)另一批開發(fā)者接手這個(gè)項(xiàng)目時(shí),這種優(yōu)勢(shì)體現(xiàn)得更加明顯[6]。 </p><p><b> (2)缺點(diǎn)</b><
59、;/p><p> Taglib是Struts的一大優(yōu)勢(shì),但對(duì)于初學(xué)者而言,卻需要一個(gè)持續(xù)學(xué)習(xí)的過(guò)程,甚至還會(huì)打亂你網(wǎng)頁(yè)編寫的習(xí)慣,但是,當(dāng)你習(xí)慣了它時(shí),你會(huì)覺得它真的很棒。 Struts將MVC的Controller一分為三,在獲得結(jié)構(gòu)更加清晰的同時(shí),也增加了系統(tǒng)的復(fù)雜度。</p><p> Struts從產(chǎn)生到現(xiàn)在還不到半年,但已逐步越來(lái)越多運(yùn)用于商業(yè)軟件。雖然它現(xiàn)在還有不少缺
60、點(diǎn),但它是一種非常優(yōu)秀的J2EE MVC實(shí)現(xiàn)方式。</p><p> 2.4 Spring概述</p><p> 2.4.1 Spring的由來(lái)和發(fā)展</p><p> Spring是java平臺(tái)上的一個(gè)開源應(yīng)用框架。它的第一個(gè)版本是由Rod Johnson寫出來(lái)的。Rod在他的Expert One-On-One Java EE Design and
61、 Development(Java企業(yè)應(yīng)用設(shè)計(jì)與開發(fā)的專家一對(duì)一)一書中首次發(fā)布了這個(gè)框架。該框架也可以移植到.NET的環(huán)境下。 Spring的框架首次在2003年6月的Apache 2.0的使用許可中發(fā)布。第一個(gè)具有里程碑意義的版本是2004年3月發(fā)布的1.0。2004年9月和2005年3月先后又有重要的版本面世。 Spring框架本身并沒有強(qiáng)制實(shí)行任何特別的編程模式。在Java社區(qū)里,Spring作為EJB模型之外的
62、另外一個(gè)選擇甚至是替代品而廣為流行。從設(shè)計(jì)上看,Spring給予了Java程序員許多的自由度,但同時(shí)對(duì)業(yè)界常見的問(wèn)題也提供了良好的文檔和易于使用的方法。 </p><p> Spring框架的核心功能在任何Java應(yīng)用中都是適用的。在基于Java企業(yè)平臺(tái)上的web應(yīng)用中,大量的拓展和改進(jìn)得以形成。為此,Spring獲得了廣泛的歡迎,并被許多公司認(rèn)可為具有戰(zhàn)略意義的重要框架。2.4.2 Spring的優(yōu)缺點(diǎn)
63、 </p><p><b> (1)優(yōu)點(diǎn)</b></p><p> 提供了一種管理對(duì)象的方法,可以把中間層對(duì)象有效地組織起來(lái)。一個(gè)完美的框架“黏合劑”。</p><p> 采用了分層結(jié)構(gòu),可以增量引入到項(xiàng)目中。</p><p> 有利于面向接口編程習(xí)慣的養(yǎng)成。</p><p>
64、 目的之一是為了寫出易于測(cè)試的代碼。</p><p> 非侵入性,應(yīng)用程序?qū)pring API的依賴可以減至最小限度。</p><p> 一致的數(shù)據(jù)訪問(wèn)介面。</p><p> 一個(gè)輕量級(jí)的架構(gòu)解決方案</p><p><b> (2)缺點(diǎn)</b></p><p> 中斷了應(yīng)用程序的邏
65、輯,使代碼變得不完整,不直觀。此時(shí)單從Source無(wú)法完全把握應(yīng)用的所有行為。</p><p> 將原本應(yīng)該代碼化的邏輯配置化,增加了出錯(cuò)的機(jī)會(huì)以及額外的負(fù)擔(dān)。</p><p> 時(shí)光倒退,失去了IDE的支持。在目前IDE功能日益強(qiáng)大的時(shí)代,以往代碼重構(gòu)等讓人頭痛的舉動(dòng)越來(lái)越容易。而且IDE還提供了諸多強(qiáng)大的輔助功能,使得編程的門檻降低很多。通常來(lái)說(shuō),維護(hù)代碼要比維護(hù)配置文件,或者配置
66、文件+代碼的混合體要容易的多。</p><p> 調(diào)試階段不直觀,后期的bug對(duì)應(yīng)階段,不容易判斷問(wèn)題所在。</p><p> 2.5 Ibatis概述</p><p> 2.5.1 Ibatis的由來(lái)和發(fā)展</p><p> Ibatis一詞來(lái)源于“internet”和“abatis”的組合,是一個(gè)由Clinton Begin在20
67、01年發(fā)起的開放源代碼項(xiàng)目。最初側(cè)重于密碼軟件的開發(fā),現(xiàn)在是一個(gè)基于Java的持久層框架。 </p><p> Ibatis提供的持久層框架包括SQL Maps和Data Access Objects(DAO),同時(shí)還提供一個(gè)利用這個(gè)框架開發(fā)的JPetStore實(shí)例。</p><p> Ibatis本是apache的一個(gè)開源項(xiàng)目,2010年這個(gè)項(xiàng)目由apache software fo
68、undation 遷移到了google code,并且改名為mybatis。</p><p> 相對(duì)Hibernate和Apache OJB 等“一站式”O(jiān)RM解決方案而言,Ibatis 是一種“半 </p><p> 自動(dòng)化”的ORM實(shí)現(xiàn)。 縱觀目前主流的ORM,無(wú)論Hibernate 還是 </p><p> Apache OJB,都對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)提供了較為
69、完整的封裝,提供了從POJO 到數(shù)據(jù)庫(kù)表的全套映射機(jī)制。程序員往往只需定義好了POJO 到數(shù)據(jù)庫(kù)表的映射關(guān)系,即可通過(guò)Hibernate 或者OJB 提供的方法完成持久層操作。程序員甚至不需要對(duì)SQL 的熟練掌握,Hibernate/OJB 會(huì)根據(jù)制定的存儲(chǔ)邏輯,自動(dòng)生成對(duì)應(yīng)的SQL 并調(diào)用JDBC 接口加以執(zhí)行。</p><p> Ibatis是一種半自動(dòng)化的ORM, 需要手工編寫sql ;hibernate
70、不需要手工編寫sql。</p><p> 2.5.2 Ibatis的優(yōu)缺點(diǎn) </p><p><b> ?。?)優(yōu)點(diǎn)</b></p><p> 簡(jiǎn)單:易于學(xué)習(xí),易于使用,通過(guò)文檔和源代碼,可以比較完全的掌握它的設(shè)計(jì)思路和實(shí)現(xiàn)。</p><p> 靈活:通過(guò)sql基本上可以實(shí)現(xiàn)我們不使用數(shù)據(jù)訪問(wèn)框架可以實(shí)現(xiàn)
71、的所有功能,或許更多。</p><p> 功能完整:提供了連接管理,緩存支持,線程支持,(分布式)事務(wù)管理,通過(guò)配置作關(guān)系對(duì)象映射等數(shù)據(jù)訪問(wèn)層需要解決的問(wèn)題。提供了DAO支持,并在DAO框架中封裝了ADO.NET,NHibernate和DataMapper。</p><p> 增強(qiáng)系統(tǒng)的可維護(hù)性:通過(guò)提供DAL層,將業(yè)務(wù)邏輯和數(shù)據(jù)訪問(wèn)邏輯分離,使系統(tǒng)的設(shè)計(jì)更清晰,更易維護(hù),更易單元測(cè)試
72、。sql和代碼的分離,提高了可維護(hù)性。</p><p><b> (2)缺點(diǎn)</b></p><p> 滯后性:還沒有明確對(duì).NET2.0的支持。最新版本在2.0下編譯可以,但有些單元測(cè)試不能通過(guò)。</p><p> 不成熟,工程實(shí)踐較少: IbatisNet在實(shí)際項(xiàng)目中的使用較少。 只是理論上可行.</p><p&
73、gt; 半ORM,工具支持較少: 需要我們自己寫sql,并且.NET下還未發(fā)現(xiàn)可以自動(dòng)生成業(yè)務(wù)層類和配置文件的工具,這點(diǎn)和NHibernate不一樣,NHibernate會(huì)為我們的數(shù)據(jù)庫(kù)直接產(chǎn)生sql,并有一些輔助工具。因此使用Ibatis比NHibernate要多做一些工作。</p><p><b> 2.6 JDBC</b></p><p> JDBC(Ja
74、va Data Base Connectivity,java數(shù)據(jù)庫(kù)連接)是一種用于執(zhí)行SQL語(yǔ)句的Java API,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),它由一組用Java語(yǔ)言編寫的類和接口組成。它的用途是與數(shù)據(jù)庫(kù)建立連接、發(fā)送 操作數(shù)據(jù)庫(kù)的語(yǔ)句并處理結(jié)果。</p><p> JDBC為工具/數(shù)據(jù)庫(kù)開發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開發(fā)人員能夠用純Java API編寫數(shù)據(jù)庫(kù)應(yīng)用
75、程序,同時(shí),JDBC也是個(gè)商標(biāo)名。 </p><p> 有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語(yǔ)句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問(wèn)Sybase數(shù)據(jù)庫(kù)專門寫一個(gè)程序,為訪問(wèn)Oracle數(shù)據(jù)庫(kù)又專門寫一個(gè)程序,或?yàn)樵L問(wèn)Informix數(shù)據(jù)庫(kù)又編寫另一個(gè)程序等等,程序員只需用JDBC API寫一個(gè)程序就夠了,它可向相應(yīng)數(shù)據(jù)庫(kù)發(fā)送SQL調(diào)用。同時(shí),將Java語(yǔ)言和JDBC結(jié)合起來(lái)使程序員不
76、必為不同的平臺(tái)編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺(tái)上運(yùn)行,這也是Java語(yǔ)言“編寫一次,處處運(yùn)行”的優(yōu)勢(shì)。 </p><p> Java數(shù)據(jù)庫(kù)連接體系結(jié)構(gòu)是用于Java應(yīng)用程序連接數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)方法。JDBC對(duì)Java程序員而言是API,對(duì)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫(kù)廠商及第三方中間件廠商實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接提供了標(biāo)準(zhǔn)方法。J
77、DBC使用已有的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡(jiǎn)單、嚴(yán)格類型定義且高性能實(shí)現(xiàn)的接口。 </p><p> Java具有堅(jiān)固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動(dòng)下載等特性,是編寫數(shù)據(jù)庫(kù)應(yīng)用程序的杰出語(yǔ)言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)之間進(jìn)行對(duì)話的方法。而 JDBC 正是作為此種用途的機(jī)制。</p>&l
78、t;p> JDBC擴(kuò)展了Java的功能。例如,用Java和JDBC API可以發(fā)布含有applet的網(wǎng)頁(yè),而該applet使用的信息可能來(lái)自遠(yuǎn)程數(shù)據(jù)庫(kù)。企業(yè)也可以用JDBC通過(guò)Intranet將所有職員連到一個(gè)或多個(gè)內(nèi)部數(shù)據(jù)庫(kù)中(即使這些職員所用的計(jì)算機(jī)有Windows、Macintosh和UNIX等各種不同的操作系統(tǒng))。隨著越來(lái)越多的程序員開始使用Java編程語(yǔ)言,對(duì)從Java中便捷地訪問(wèn)數(shù)據(jù)庫(kù)的要求也在日益增加。</p
79、><p> 2.7 Oracle 10g</p><p> Oracle 10g數(shù)據(jù)庫(kù)關(guān)鍵目標(biāo)有二:</p><p> ?。?)降低管理開銷;</p><p> (2) 提高性能。 </p><p> Oracle 10g的增強(qiáng)有對(duì)高可用性的增強(qiáng)、新的Flashback 能力、支持回滾更新操作;對(duì)安全性的增強(qiáng),便于
80、管理大量的用戶;BI 方面的增強(qiáng),包括改進(jìn)的 SQL 能力、分析功能、OLAP、數(shù)據(jù)挖掘的能力等;對(duì)非關(guān)系型數(shù)據(jù)存儲(chǔ)的能力得到了改進(jìn);XML 的能力;對(duì)開發(fā)能力支持的加強(qiáng),對(duì)生物信息學(xué)( Bioinformatics )的支持。</p><p> Oracle 10g于2003年9月9日在舊金山發(fā)布,代號(hào)中的G代表GRID,表示ORACLE將提供一個(gè)網(wǎng)格計(jì)算體系,是自O(shè)racle 8I提供互聯(lián)網(wǎng)功能后的一次重大
81、更名,并在今年發(fā)布了可能是Oracle10g的最后一個(gè)補(bǔ)丁集10.2.0.5 。</p><p> Oracle 10g提供了一些新增功能以及功能改善,選擇一些和日常運(yùn)行有關(guān)的介紹,如下:</p><p><b> ?。?)內(nèi)存自動(dòng)管理</b></p><p> (2)新增的系統(tǒng)表空間--SYSAUX表空間</p><p
82、> (3)Oracle Enterprise Manager(OEM)</p><p> ?。?)Automatic Workload Repository(AWR)</p><p><b> ?。?)固定執(zhí)行計(jì)劃</b></p><p><b> ?。?)鎖定統(tǒng)計(jì)信息</b></p><p&g
83、t; (7)語(yǔ)句的并行執(zhí)行</p><p><b> ?。?)分區(qū)管理</b></p><p><b> ?。?)改善的段管理</b></p><p><b> ?。?0)數(shù)據(jù)泵功能</b></p><p> ?。?1)FLASHBACK功能</p><p
84、><b> ?。?2)RAC介紹</b></p><p> 2.8 MyEclipse8.6</p><p> MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和J2EE的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效
85、率。它是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate?! ≡诮Y(jié)構(gòu)上,MyEclipse的特征可以被分為7類: ?。?)J2EE模型 (2) WEB開發(fā)工具 ?。?) EJB開發(fā)工具 ?。?) 應(yīng)用程序服務(wù)器的連接器 (5) J2EE項(xiàng)目部署服務(wù) ?。?) 數(shù)據(jù)庫(kù)服務(wù) (7) My
86、Eclipse整合幫助 對(duì)于以上每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過(guò)一系列的插件來(lái)實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)?! 『?jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的J2EE</p><p> 2.9 Tomcat7.0Tomcat是Apache 軟件基金會(huì)(Apach
87、e Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流
88、行的Web 應(yīng)用服務(wù)器。</p><p> Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。 </p><p> Tomcat 是一個(gè)輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JS
89、P 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你 運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 </p><p> 這里的訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁(yè)面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁(yè)面
90、和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁(yè)面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過(guò),Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。目前Tomcat最新版本為7.0.27 Released。</p><p> Apache Tomcat 7.x是目前的開發(fā)焦點(diǎn)。它在汲取了Tomcat
91、 6.0.x優(yōu)點(diǎn)的基礎(chǔ)上,實(shí)現(xiàn)了對(duì)于Servlet 3.0、JSP 2.2和EL 2.2等特性的支持。除此以外的改進(jìn)列表如下: </p><p> ?。?)Web應(yīng)用內(nèi)存溢出偵測(cè)和預(yù)防 </p><p> ?。?) 增強(qiáng)了管理程序和服務(wù)器管理程序的安全性 </p><p> (3)一般 CSRF保護(hù) </p><p> ?。?)支持
92、web應(yīng)用中的外部?jī)?nèi)容的直接引用 </p><p> ?。?) 重構(gòu) (connectors, lifecycle)及很多核心代碼的全面梳理 </p><p> 2.10 JDK1.6</p><p> Jdk1.6是Java 平臺(tái)的第六個(gè)版本, Standard Edition (Java SE), 代號(hào)Mustang, 發(fā)布了第二個(gè)Beta版本。今年年初M
93、ustang發(fā)布了第一個(gè)Beta版本,掀開了Java SE 6 的神秘面紗。 這一次,是時(shí)隔4個(gè)月發(fā)布第二次Beta版本。</p><p> Java SE6中實(shí)現(xiàn)了JSR223。這是一個(gè)腳本框架,提供了讓腳本語(yǔ)言來(lái)訪問(wèn)Java內(nèi)部的方法。你可以在運(yùn)行的時(shí)候找到腳本引擎,然后調(diào)用這個(gè)引擎去執(zhí)行腳本。這個(gè)腳本API允許你為腳本語(yǔ)言提供Java支持。另外,Web Scripting Framework允許腳本代碼在
94、任何的Servlet容器(例如Tomcat)中生成Web內(nèi)容。 Database,綁定Derby 開源嵌入式數(shù)據(jù)庫(kù) Derby(JavaDB) 綁定在JDK 1.6中。JDK 1.6 將綁定開源數(shù)據(jù)庫(kù) Derby 更豐富的Desktop APIs Mustang中擁有更多強(qiáng)的桌面API提供給開發(fā)者, 開發(fā)者可以更簡(jiǎn)單地開發(fā)更強(qiáng)大的桌面應(yīng)用, 比如啟動(dòng)界面的支持,系統(tǒng)托盤的支持,JTable排序等等監(jiān)視和管理 Java SE 6中對(duì)內(nèi)存泄
95、漏增強(qiáng)了分析以及診斷能力。當(dāng)遇到j(luò)ava.lang.OutOfMemory異常的時(shí)候,可以得到一個(gè)完整的堆棧信息,并且當(dāng)堆已經(jīng)滿了的時(shí)候,會(huì)產(chǎn)生一個(gè)Log文件來(lái)記錄這個(gè)致命錯(cuò)誤。另外,JVM還添加了一個(gè)選項(xiàng),允許你在堆滿的時(shí)候運(yùn)行腳本。(這也就是提供了另外一種方法來(lái)診斷錯(cuò)誤) 增強(qiáng)的JM</p><p> jdk1.6新特性:</p><p> ?。?)Web服務(wù)元數(shù)據(jù)</p>
96、;<p><b> ?。?)腳本語(yǔ)言支持</b></p><p> (3)JTable的排序和過(guò)濾</p><p> ?。?)更簡(jiǎn)單,更強(qiáng)大的JAX-WS</p><p> (5)輕量級(jí)Http Server</p><p> ?。?)嵌入式數(shù)據(jù)庫(kù) Derby</p><p>
97、?。?)Desktop類和SystemTray類</p><p> (8)使用JAXB2來(lái)實(shí)現(xiàn)對(duì)象與XML之間的映射</p><p> ?。?)使用Compiler API</p><p> (10)插入式注解處理API(Pluggable Annotation Processing API)</p><p> ?。?1)用Console
98、開發(fā)控制臺(tái)程序</p><p> ?。?2)Common Annotations</p><p><b> (13)監(jiān)視和管理</b></p><p> ?。?4)Security:安全性</p><p> ?。?5)Instrumentation</p><p> ?。?6)JMX與系統(tǒng)管理&
99、lt;/p><p> ?。?7)編輯器API</p><p> ?。?8)獲取磁盤空間大小 java.io.File的新方法</p><p><b> 3系統(tǒng)分析</b></p><p> 3.1 系統(tǒng)的性能要求</p><p> ?。?)磁盤容量要求:</p><p>
100、 本系統(tǒng)采用Oracle數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)系統(tǒng)容量占用較大,數(shù)據(jù)庫(kù)文件占用空間900M。另外該精品課程網(wǎng)站中的資源管理模塊也會(huì)占用很大的空間。一些管理員的課件資源在文件中將會(huì)占用很大的空間。而本機(jī)器有320G的空間,足夠放入一些視頻,如果空間不夠,這個(gè)就要管理員及時(shí)的清空系統(tǒng)中的過(guò)期文件。</p><p><b> ?。?)安全性要求:</b></p><p> 本系統(tǒng)
101、有著權(quán)限設(shè)置,不同的用戶有不同的權(quán)限,教師用戶不可以越權(quán)進(jìn)行學(xué)生的操作,學(xué)生用戶也不可以越權(quán)更改或者訪問(wèn)管理員的頁(yè)面。管理員的權(quán)限,可以對(duì)網(wǎng)站進(jìn)行任何的操作。</p><p><b> ?。?)適應(yīng)性要求:</b></p><p> 要求界面友好,菜單清楚,學(xué)生和老師都能很快熟悉網(wǎng)站。對(duì)于部分文章、課件的發(fā)布要求達(dá)到所見即所得的效果。</p><
102、p> 3.2 系統(tǒng)功能需求分析</p><p> 本系統(tǒng)可以作為本院校的在線教學(xué)課堂;可以為教師的輔助教學(xué)或者課程發(fā)布提供一個(gè)完善的教學(xué)網(wǎng)站;學(xué)生可以利用該網(wǎng)站來(lái)學(xué)習(xí)一些課程的任務(wù)和查詢老師留下的作業(yè),并可以提交作業(yè),還可以進(jìn)行在線測(cè)試估分。但是這里還有一點(diǎn)需要強(qiáng)調(diào)的是,只有本校學(xué)生和老師才能夠登錄在線考試系統(tǒng)以及添加留言系統(tǒng),因?yàn)楸鞠到y(tǒng)采用學(xué)號(hào)-密碼以及工號(hào)-密碼的方式登錄,所以任何不符合的人員都不能
103、進(jìn)行在線答題以及在線留言。</p><p> 精品課程網(wǎng)站根據(jù)不同的使用者,可以分為兩個(gè)部分:</p><p> 一是面向管理員部分,管理員的部分內(nèi)容包括課程發(fā)布、教學(xué)大綱管理、課件管理、在線測(cè)試管理、用戶管理(教師和用戶)、管理員信息管理、退出功能;</p><p> 二是面向?qū)W生用戶和教師用戶部分,用戶可以查看課程、教程區(qū)瀏覽、課件區(qū)下載、在線測(cè)試(需要登
104、錄)和在線留言(需要登錄)。</p><p> 3.2.1 功能描述</p><p> 根據(jù)系統(tǒng)功能劃分,本系統(tǒng)詳細(xì)需求描述如下:</p><p><b> 登錄功能</b></p><p> 為了使得網(wǎng)站的一些信息和使用功能安全得以保證,就必須有一個(gè)用戶登錄功能。作為一個(gè)基本的登錄系統(tǒng),應(yīng)具有以如下功能:<
105、;/p><p> ?。?)本系統(tǒng)校內(nèi)學(xué)生和老師可以直接進(jìn)入登錄系統(tǒng);</p><p> ?。?)非本校人員可以進(jìn)入該系統(tǒng),但是沒有在線測(cè)試和在線留言的功能,只有查看相關(guān)課程以及留言信息,當(dāng)然也可以下載課件等其它公開資源。</p><p><b> 教材建設(shè)</b></p><p> 該模塊提供了和該課程有關(guān)的各類書目,方
106、便學(xué)生翻閱和參考用。</p><p><b> 授課教案</b></p><p> 該模塊提供了課件下載功能,用戶可以打開網(wǎng)頁(yè)鏈接,查找要下載的課件,然后下載到本地,可供學(xué)習(xí)。</p><p><b> 在線測(cè)試</b></p><p> 用戶需要先登錄,登錄時(shí)憑借自己的學(xué)號(hào)和密碼進(jìn)入系統(tǒng),
107、然后做相關(guān)的試題,做完之后需提交。測(cè)試是隨機(jī)進(jìn)行的,十套本科期末考試題目和五套研究生入學(xué)考試題目,學(xué)生可以隨機(jī)抽取一套進(jìn)行測(cè)試,另外,測(cè)試需要在一定的時(shí)間內(nèi)完成,到了規(guī)定時(shí)間,如果還沒有完成答卷,就強(qiáng)制退出答題系統(tǒng),學(xué)生在提交答卷之后,即可看到自己的分?jǐn)?shù)。而且答案只有在做了測(cè)試之后才可以查看。</p><p><b> 留言板</b></p><p> 該頁(yè)面任何
108、人都可以進(jìn)入查看所有留言信息,但是只有本校學(xué)生和老師才能夠進(jìn)入添加留言頁(yè)面來(lái)發(fā)表留言,與在線測(cè)試一樣,學(xué)生憑借已有的學(xué)號(hào)和密碼登錄,老師憑借工號(hào)和密碼登錄,只有錄入的信息與數(shù)據(jù)庫(kù)表中存儲(chǔ)的相關(guān)信息一致,才能夠進(jìn)入到添加留言頁(yè)面進(jìn)行留言。</p><p><b> 教學(xué)大綱</b></p><p> 所有用戶都可以選擇查看或是下載教學(xué)大綱。</p>&
109、lt;p><b> 3.3 用例模型</b></p><p> 3.3.1 學(xué)生用戶用例圖</p><p> 學(xué)生用例圖見圖3.1。</p><p> 圖3.1 學(xué)生用例圖</p><p> 3.3.2 教師用戶用例圖</p><p> 教師用例圖見圖3.2。</p>
110、;<p> 圖3.2 教師用例圖</p><p> 3.3.3 管理員用例圖</p><p> 管理員用例圖表示了管理員的操作權(quán)限,管理員可以有管理員的權(quán)限,身份認(rèn)證通過(guò)以后,管理員可以進(jìn)行一切事物的管理。管理員用例圖見圖3.3。</p><p> 圖3.3 管理員用例圖</p><p><b> 活動(dòng)圖
111、如下:</b></p><p> 進(jìn)入本系統(tǒng)后,有三個(gè)活動(dòng)選項(xiàng),一個(gè)是學(xué)生用戶,一個(gè)是教師用戶,一個(gè)是管理員。</p><p><b> 3.4活動(dòng)圖</b></p><p> 精品課程網(wǎng)活動(dòng)圖見圖3.4。</p><p> 圖3.4 精品課程網(wǎng)活動(dòng)圖</p><p><
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 計(jì)算機(jī)組成原理精品課程平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 計(jì)算機(jī)組成原理精品課程平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)【開題報(bào)告】
- 計(jì)算機(jī)組成原理精品課程平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)【文獻(xiàn)綜述】
- 《計(jì)算機(jī)圖形學(xué)》精品課程網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- 網(wǎng)絡(luò)精品課程網(wǎng)站畢業(yè)論文
- 計(jì)算機(jī)組成原理精品課程平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)+開題報(bào)告+文獻(xiàn)綜述】
- 精品課程教育網(wǎng)站畢業(yè)論文
- 計(jì)算機(jī)組成原理課程
- 計(jì)算機(jī)組成原理課程
- 畢業(yè)論文——計(jì)算機(jī)組成原理教學(xué)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)
- 《計(jì)算機(jī)基礎(chǔ)》精品課程建設(shè)實(shí)施方案
- 畢業(yè)論文-網(wǎng)絡(luò)安全精品課程網(wǎng)站建設(shè)與規(guī)劃
- 計(jì)算機(jī)組成原理課程設(shè)計(jì)論文
- 計(jì)算機(jī)類專業(yè)畢業(yè)設(shè)計(jì)----基于bs精品課程網(wǎng)站設(shè)計(jì)
- 計(jì)算機(jī)組成原理課程設(shè)計(jì)--計(jì)算機(jī)組成原理算法實(shí)現(xiàn)
- 基于模糊綜合評(píng)價(jià)法的精品課程建設(shè)評(píng)估及其計(jì)算機(jī)輔助評(píng)估軟件設(shè)計(jì)——精品課程建設(shè)評(píng)估方法研究【畢業(yè)論文】
- 畢業(yè)設(shè)計(jì)(論文)精品課程網(wǎng)站
- 精品課程網(wǎng)站畢業(yè)設(shè)計(jì)論文
- 畢業(yè)論文---java精品課程網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
- 計(jì)算機(jī)組成原理——cpu論文
評(píng)論
0/150
提交評(píng)論