




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、PAGE PAGE 94基于WEB的Java精品課程網站的設計與實現(xiàn)PAGE PAGE 94基于WEB的Java精品課程網站的設計與實現(xiàn)摘要在Internet飛速發(fā)展的今天,互聯(lián)網成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經濟、生活等各個方面發(fā)揮著重要的作用。Internet上發(fā)布信息主要是通過網站來實現(xiàn)的,獲取信息也是要在Internet“海洋”中按照一定的檢索方式將所需要的信息從網站上下載下來。因此網站建設在Internet應用上的地位顯而易見,它已成為政府、企事業(yè)單位信息化建設中的重要組成部分,從而倍受人們的重視。 本畢業(yè)設計主要完成該精品課網站的設計及實現(xiàn)。通過本網站,
2、可以使用戶能夠在線的查閱有關課程的最新信息,了解Java知識,下載課程的課件,在線觀看課程的講座,并可進行在線答疑等。使教學更加方便,方便學生在家或寢室自己學習,提高學生自學能力,也節(jié)省學生、老師的時間。關鍵詞精品課程;網站; JSP;JavaBean; Servlet; Access The Java-based WEB Quality Course Design and Implementation of Web site ABSTRACTThe rapid development of the Internet today, Internet access to become a fas
3、t release and an important channel for transmitting information, its political, economic, and other aspects of life play an important role. Published information on the Internet is mainly achieved through the website, access to information is also in the Internet sea in the search according to certa
4、in ways the information they need to download from the site. Therefore the construction site in the status of Internet applications Obviously, it has become the government, enterprises and institutions in the information technology an important component of so much attention. The main graduation des
5、ign quality lesson to complete the design and realization of the site. Through this website, you can enable users to access the course online the latest information on Java knowledge, download the curriculum courseware, online watch the lecture courses, and online Q & A and so on. To make teaching e
6、asier for students to learn at home or bedroom its own students, and enhance self-learning ability, but also save students and teachers time. KEY WORDS Courses, JSP, JavaBean, Servlet, Access ,Site目 錄 TOC o 1-3 h z u HYPERLINK l _Toc232266773 摘要 PAGEREF _Toc232266773 h 1 HYPERLINK l _Toc232266774 AB
7、STRACT PAGEREF _Toc232266774 h 2 HYPERLINK l _Toc232266775 1緒論 PAGEREF _Toc232266775 h 4 HYPERLINK l _Toc232266776 1.1系統(tǒng)開發(fā)背景 PAGEREF _Toc232266776 h 4 HYPERLINK l _Toc232266777 1.2系統(tǒng)當前現(xiàn)狀 PAGEREF _Toc232266777 h 4 HYPERLINK l _Toc232266778 1.3精品課程網站研究的意義 PAGEREF _Toc232266778 h 5 HYPERLINK l _Toc2322
8、66779 1.4本文的主要工作 PAGEREF _Toc232266779 h 5 HYPERLINK l _Toc232266780 2系統(tǒng)所用技術概述 PAGEREF _Toc232266780 h 7 HYPERLINK l _Toc232266781 2.1Java理論基礎 PAGEREF _Toc232266781 h 7 HYPERLINK l _Toc232266782 2.2jsp簡介 PAGEREF _Toc232266782 h 8 HYPERLINK l _Toc232266783 2.2.1什么是JSP PAGEREF _Toc232266783 h 8 HYPERL
9、INK l _Toc232266784 2.2.2JSP技術原理 PAGEREF _Toc232266784 h 9 HYPERLINK l _Toc232266785 2.2.3JSP運行機制 PAGEREF _Toc232266785 h 10 HYPERLINK l _Toc232266786 2.3Servlet簡介 PAGEREF _Toc232266786 h 10 HYPERLINK l _Toc232266787 2.3.1什么是Servlet PAGEREF _Toc232266787 h 10 HYPERLINK l _Toc232266788 2.3.2Servlet技術
10、的特點 PAGEREF _Toc232266788 h 10 HYPERLINK l _Toc232266789 2.3.3Servlet的生命周期 PAGEREF _Toc232266789 h 11 HYPERLINK l _Toc232266790 2.4Struts簡介 PAGEREF _Toc232266790 h 11 HYPERLINK l _Toc232266791 2.4.1什么是Struts PAGEREF _Toc232266791 h 11 HYPERLINK l _Toc232266792 2.4.2Struts框架的主要組件和原理 PAGEREF _Toc23226
11、6792 h 11 HYPERLINK l _Toc232266793 2.5CSS簡介 PAGEREF _Toc232266793 h 12 HYPERLINK l _Toc232266794 2.5.1什么是CSS PAGEREF _Toc232266794 h 12 HYPERLINK l _Toc232266795 2.5.2CSS分類 PAGEREF _Toc232266795 h 13 HYPERLINK l _Toc232266796 2.5.3CSS的特點 PAGEREF _Toc232266796 h 13 HYPERLINK l _Toc232266797 2.6Acces
12、s PAGEREF _Toc232266797 h 13 HYPERLINK l _Toc232266798 2.7XML的基本概念 PAGEREF _Toc232266798 h 15 HYPERLINK l _Toc232266799 3系統(tǒng)的分析設計與實現(xiàn) PAGEREF _Toc232266799 h 18 HYPERLINK l _Toc232266800 3.1系統(tǒng)架構設計概述 PAGEREF _Toc232266800 h 18 HYPERLINK l _Toc232266801 3.1.1三層架構 PAGEREF _Toc232266801 h 18 HYPERLINK l _
13、Toc232266802 3.1.2MVC簡介 PAGEREF _Toc232266802 h 19 HYPERLINK l _Toc232266803 3.1.3三層架構的優(yōu)點 PAGEREF _Toc232266803 h 21 HYPERLINK l _Toc232266804 3.1.4數據訪問層 PAGEREF _Toc232266804 h 21 HYPERLINK l _Toc232266805 3.2系統(tǒng)需求分析 PAGEREF _Toc232266805 h 22 HYPERLINK l _Toc232266806 3.2.1系統(tǒng)定義 PAGEREF _Toc23226680
14、6 h 22 HYPERLINK l _Toc232266807 3.2.2功能需求 PAGEREF _Toc232266807 h 22 HYPERLINK l _Toc232266808 3.2.3數據需求 PAGEREF _Toc232266808 h 22 HYPERLINK l _Toc232266809 3.3系統(tǒng)模塊設計 PAGEREF _Toc232266809 h 23 HYPERLINK l _Toc232266810 3.4數據庫設計 PAGEREF _Toc232266810 h 24 HYPERLINK l _Toc232266811 3.4.1數據庫設計概述 PAG
15、EREF _Toc232266811 h 24 HYPERLINK l _Toc232266812 3.4.2數據庫概念結構設計 PAGEREF _Toc232266812 h 24 HYPERLINK l _Toc232266813 3.5系統(tǒng)詳細設計與實現(xiàn) PAGEREF _Toc232266813 h 25 HYPERLINK l _Toc232266814 3.5.1網站首頁 PAGEREF _Toc232266814 h 25 HYPERLINK l _Toc232266815 3.5.2課程介紹 PAGEREF _Toc232266815 h 27 HYPERLINK l _Toc
16、232266816 3.5.3課程內容 PAGEREF _Toc232266816 h 28 HYPERLINK l _Toc232266817 3.5.4網上課堂 PAGEREF _Toc232266817 h 30 HYPERLINK l _Toc232266818 3.5.5常用下載 PAGEREF _Toc232266818 h 35 HYPERLINK l _Toc232266819 3.5.6參考資料 PAGEREF _Toc232266819 h 36 HYPERLINK l _Toc232266820 3.5.7后臺管理 PAGEREF _Toc232266820 h 37 H
17、YPERLINK l _Toc232266821 4系統(tǒng)的難點及解決方案 PAGEREF _Toc232266821 h 44 HYPERLINK l _Toc232266822 4.1文件上傳問題 PAGEREF _Toc232266822 h 44 HYPERLINK l _Toc232266823 4.2樹形菜單的設計 PAGEREF _Toc232266823 h 44 HYPERLINK l _Toc232266824 5系統(tǒng)總結與展望 PAGEREF _Toc232266824 h 46 HYPERLINK l _Toc232266825 5.1系統(tǒng)的總結 PAGEREF _Toc
18、232266825 h 46 HYPERLINK l _Toc232266826 5.2系統(tǒng)的展望 PAGEREF _Toc232266826 h 46 HYPERLINK l _Toc232266827 致謝 PAGEREF _Toc232266827 h 47 HYPERLINK l _Toc232266828 參考文獻 PAGEREF _Toc232266828 h 48緒論系統(tǒng)開發(fā)背景人類社會的發(fā)展與知識的傳遞有著一種必然的聯(lián)系,教育是人類傳遞知識的最直接最有效的方式。在21世紀這個信息高度發(fā)達,并且高速流通的時代,計算機的普及以及計算機網絡技術的應用,讓大量普通人能夠有機會接觸到比以
19、往更多的知識。作為一個以傳播知識為主要職能的機構學校建立一個自己的精品課程網站是十分必要的事情,這不僅是能使更多的人享用寶貴的教育資料源,同時也對于提升學校自身的知名度,提高學生自學能力,有相當大的幫助。系統(tǒng)當前現(xiàn)狀在世界范圍內來看,有關精品課程網站研究一直都在進行并且不斷取得進步,特別是西方發(fā)達國家,他們在精品課程的理論研究與實際運用方法積累了大量的經驗,雖然我們中國國內在精品課程網站這一方面的研究起步較晚,但我們同樣也取得了大量豐碩的成果。各個高校相繼創(chuàng)建了各自的精品課程網站,清華大學、人民大學、北京大學等一大批知名學府利用自身的資源優(yōu)勢,引領中國國內精品課程網站的發(fā)展方面。政府的大力支持
20、,各高等學府的積極配合,使得我們國內精品課程網站的研究取得了不俗的成就。精品課程網站研究的意義根據我國教育水平的現(xiàn)狀,盡管我國的現(xiàn)代教育水平在新中國成立之后取得了巨大的進步,但是相對于西方發(fā)達國家而言我們還十分落后。人口多而教育資源缺乏影響著我國受過高等教育的人在人口比例中所占的比重,這嚴重的制約了我國社會的發(fā)展與進步,這對于提高我國國民的文化科學素養(yǎng)十分不利。怎樣才能讓更多的人享有本因只有一少部分人才能享有的教育資源呢?對于這個問題,前人已經做了大量的研究。隨著計算機技術以及計算機網絡技術的飛速發(fā)展,人們終于找到了一條實現(xiàn)這種夢想的捷徑,那就是寄希望于把各種教育資源移置到互聯(lián)網上去,使得各地
21、方的人都能夠方便的獲取到各種自己想要的知識,打破傳統(tǒng)教育資源分配不均的限制,使得更多的人能夠有機會獲取到知識,這就是精品課程網站研究的實現(xiàn)意義。 本文的主要工作如果從一個較低層次來理解什么是精品課程網站。那么首先它是一個網站,因此它必須具備一個網站所應該擁有開放性、可用性、安全性、可維護性等屬性。要做到這些,就必須要求在設計與實現(xiàn)過程中更多的去了解與網絡有關的知識。其次,精品課程網站設計與實現(xiàn)的主要目的是傳播知識,因此它必須具備一些與教育有關的功能,比如考試、答疑等功能。作者認為精品課程網站應是一個與時代接軌的產物,因此它還需要具備這一個時代所必須的一些特性,比如信息化、高效、遠程和資源共享等
22、特點。因此,本文的主要目的是分析說明精品課程網站研究應具有的各項功能以及其實現(xiàn)過程。本文的組織結構是這樣安排的:“第1章緒論”,從系統(tǒng)開發(fā)背景、系統(tǒng)當前現(xiàn)狀、國內外對精品課程網站的研究現(xiàn)狀以及精品課程研究的意義等方面給大家做一個簡要的介紹;“第2章系統(tǒng)所用技術說明與設計”,將著重介紹精品課程的發(fā)展概況,技術介紹;“第3章精品課程網站的實現(xiàn)”,重點介紹如何實現(xiàn)此精品課程網站各功能系統(tǒng)的需求分析,精品課程網站各個功能的設計以及系統(tǒng)的執(zhí)行流程;“結論”部分對整篇文章進行總結分析,對此精品課程網站的優(yōu)點與缺點進行簡單總結。系統(tǒng)所用技術概述Java理論基礎 Java是一種簡單的、面向對象的、分布式的、健
23、壯的、安全的、結構中立的、可移植的、性能很優(yōu)異的、多線程的、動態(tài)的語言。 (1)簡單 Java的風格類似于C+,并且摒棄了C+中容易引發(fā)程序錯誤的地方,如指針和內存管理。 此外Java提供了豐富的類庫。 (2)面向對象 面向對象可以說是Java最重要的特性。Java語言的設計完全是面向對象的。Java支持靜態(tài)和動態(tài)風格的代碼繼承及重用。 (3)分布式 Java包括一個支持HTTP和FTP等基于TCP/IP協(xié)議的子庫。因此,Java應用程序可憑借URL打開并訪問網絡上的對象,其訪問方式與訪問本地文件系統(tǒng)幾乎完全相同。(4)健壯 Java致力于檢查程序在編譯和運行時的錯誤。Java自己操縱內存減少
24、了內存出錯的可能性。Java提供Null指針檢測數組邊界、檢測異常出口、字節(jié)代碼校驗。 (5)安全 Java的安全性可從兩個方面得到保證。一方面,在Java語言里,像指針和釋放內存等C+功能被刪除,避免了非法內存操作。另一方面,當Java用來創(chuàng)建瀏覽器時,語言功能和瀏覽器本身提供的功能結合起來,使它更安全。(6)結構中立 為了建立Java作為網絡的一個整體,Java將它的程序編譯成一種結構中立的中間文件格式。只要有Java運行系統(tǒng)的機器都能執(zhí)行這種中間代碼。Java源程序被編譯成一種高層次的與機器無關的byte-code格式語言,這種語言被設計在虛擬機上運行,由機器相關的運行調試器實現(xiàn)執(zhí)行。
25、(7)可移植的 Java的可移植性一直是Java程序設計師們的精神指標,也是Java之所以能夠受到程序設計師們喜愛的原因之一,最大的功臣就是JVM的技術。JAVA編譯器產生的目標代碼(J-Code) 是針對一種并不存在的CPU-JAVA虛擬機(JAVA Virtual Machine),而不是某一實際的CPU。JAVA虛擬機能掩蓋不同CPU之間的差別,使J-Code能運行于任何具有JAVA虛擬機的機器上。 (8)高性能 Java可以在運行時直接將目標代碼翻譯成機器指令。Sun用直接解釋器一秒鐘內可調用300,000個過程。翻譯目標代碼的速度與C/C+的性能沒什么區(qū)別。 (9)多線程 Java支
26、持多線程,多線程功能使得在一個程序里可同時執(zhí)行多個小任務。線程,有時也稱小進程,是一個大進程里分出來的小的獨立的進程。(10)動態(tài) Java的動態(tài)特性是其面向對象設計方法的發(fā)展。它允許程序動態(tài)地裝入運行過程中所需要的類,這是C+語言進行面向對象程序設計所無法實現(xiàn)的。Java編譯器不是將對實例變量和成員函數的引用編譯為數值引用,而是將符號引用信息在字節(jié)碼中保存下傳遞給解釋器,再由解釋器在完成動態(tài)連接類后,將符號引用信息轉換為數值偏移量。 jsp簡介 JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務器在頁面被客戶端請求以后對這些Java代碼進行處理,然后將生成的HTML頁面返回給客戶端
27、的瀏覽器。Java Servlet是jsp技術的基礎,而且大型的web應用程序的開發(fā)需要Java Servlet和jsp配合才能完成。Jsp具備了Java技術的簡單易用,完全面向對象,具有平臺無關性且安全可靠,主要面向Internet的所有特點。什么是JSPJSP(Java Server Pages)是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態(tài)網頁技術標準。JSP技術有點類似ASP技術,它是在傳統(tǒng)的網頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標記(tag),從而形成JSP文件(*.jsp)。JSP技術使用Java
28、編程語言編寫類XML的tags和scriptlets,來封裝產生動態(tài)網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發(fā)變得迅速和容易。JSP技術原理JSP和客戶端的交互是通過HTTP協(xié)議實現(xiàn)的,這個過程主要分為以下4個步驟。(1) 客戶端和服務器建立連接(2) 客戶端發(fā)送請求(3) 服務器發(fā)出響應(4) 關閉連接 瀏覽器 Web服務器將數據發(fā)送到服務器向表單中輸入數據,單擊【提交】按鈕內容返回到瀏覽器顯示服務器端產生的響應編譯JSP(如果第一次調用),解析JS
29、P,生成動態(tài)內容 圖2-1 客戶端請求和響應的過程JSP運行機制所有的JSP程序在首次載入時都被翻譯成Servlet文件,然后在運行,這個工作主要有jsp引擎來完成。當第一次運行一個jsp頁面時,jsp引擎會完成以下操作:將jsp文件翻譯成Servlet文件(以.Java為后綴),它是一個完整的Java應用程序。Jsp引擎調用Java編譯器編譯Servlet文件得到可執(zhí)行的代碼文件(以.class為后綴)。Jsp引擎調用Java虛擬機解釋執(zhí)行class文件,并將運行結果返回給客戶端瀏覽器。服務器將運行結果以HTML形式作為響應返回給客戶端瀏覽器。 Servlet簡介什么是ServletServ
30、let是一種獨立于平臺和協(xié)議的服務器端的Java應用程序,可以生成動態(tài)的Web頁面。 它擔當Web瀏覽器或其他Http客戶程序發(fā)出請求,與HTTP服務器上的數據庫或應用程序之間的中間層。Servlet是位于Web 服務器內部的服務器端的Java應用程序,與傳統(tǒng)的從命令行啟動的Java應用程序不同,Servlet由Web服務器進行加載,該Web服務器必須包含支持Servlet的Java虛擬機。Servlet技術的特點 Servlet帶給開發(fā)人員的最大好處是它可以處理客戶端傳來的Http請求,并返回一個響應。Servlet是一個Java的類,Java語言能實現(xiàn)的功能,Servlet基本上都能實現(xiàn)。
31、Servlet有以下優(yōu)勢。(1) 可移植性(2) 功能強大(3) 安全(4) 簡潔(5) 集成(6) 模塊化(7) 擴展性和靈活性(8) 高效耐久Servlet的生命周期Servlet生命周期定義了一個Servlet如何被加載,初始化,以及它怎樣接收請求,響應請求,提供服務。Servlet生命周期如圖所示。不存在Servlet實例容器裝載Servlet不存在Servlet實例初始化Servlet對應Servlet的init方法調用service方法對應Servlet的service方法結束Servlet對應的Servlet的destory方法Servlet生命周期圖2-2 Servlet的生命
32、周期Struts簡介 什么是StrutsStruts是一個開源的Java web框架。它很好的實現(xiàn)了MVC(模型,視圖和控制器)設計模式。通過一個配置文件,它把各個層面的應用組件聯(lián)系起來,使組件在程序層面上聯(lián)系較少,耦合度較低,這就大大提高了應用程序的可維護性和可擴展性。 Struts框架的主要組件和原理Struts 控制器組件主要包括:充當Struts框架的中央控制器的ActionServlet組件、充當每個子應用模塊的請求處理器的RequestProcessor組件、負責處理一項具體的業(yè)務的Action組件。Struts的另一特點是使用ActionForm Bean,ActionForm
33、Bean也是一種JavaBean,除了具有一些JavaBean的常規(guī)方法,還包含一些特殊的方法,用于驗證HTML表單數據以及將其屬性重新設置為默認值。Struts框架利用ActionForm Bean來進行View組件和Controller組件之間表單數據的傳遞。JSP文件使用Struts標簽讀取修改后的ActionForm Bean的信息,重新設置HTML表單。視圖JSP控制器ActionServletActionForm模型JavaBeanActionStruts-config.xml圖2-3 Struts 工作原理圖 CSS簡介CSS(層疊樣式表)是用來進行網頁風格設計的,它簡化并擴展了
34、HTML中的各種標記,使得各個標記的屬性更具有一般性和通用性,大大提高了HTML開發(fā)的效率.在制作網頁時采用CSS技術,可以有效地對頁面的布局,字體,顏色,背景和其他效果實現(xiàn)更加精確的控制,只要對相應的代碼作一些簡單的修改,就可以改變同一頁面的不同部分,或者頁數不同的網頁的外觀和格式。什么是CSSCSS是Cascading Style Sheet的縮寫,可以譯成“層疊樣式表”或“級聯(lián)樣式表”。CSS分類CSS中,Cascading是“層疊”的意思,也就是說在同一個Web文檔中可以有多個樣式表存在,這些樣式表根據所在的位置,擁有不同的優(yōu)先級,優(yōu)先級越高,就會在最后顯示時被采用。從樣式表插入的形式
35、看可以分為3種。(1)內聯(lián)式樣式表;(2)嵌入式樣式表;(3)外部式樣式表;CSS的特點CSS是用來擴展HTML的,而不是用來替換HTML的,也就是說CSS不能脫離HTML,它只是一項輔助工具。除了可擴展HTML的樣式設定外,CSS使得網頁的設計與維護更加高效,這主要表現(xiàn)在以下幾個方面。(1)減少圖形文件的使用(2)集中管理樣式信息(3)設定共享樣式(4)將樣式分類使用 AccessAccess作為最基本最常用的數據庫技術,因其操作簡單,可用性強,對當前系統(tǒng)配置要求低而被廣泛利用。利用ADO訪問數據庫ADO(ActiveX Data Objects)是一種操作Microsoft所支持的數據庫的
36、新技術。在ASP中,ADO可以看作是一個服務器組件(Server Component),更簡單點說,是一系列的對象,應用這些功能強大的對象,即可輕松完成對數據庫復雜的操作。本文中個性化頁面的實現(xiàn)便大量地用到了ADO技術。具體的操作步驟可以歸納為以下幾步:1創(chuàng)建數據庫源名(DSN)2創(chuàng)建數據庫鏈接(Connection)3創(chuàng)建數據對象4操作數據庫5關閉數據對象和鏈接每一步的作法如下:一、創(chuàng)建數據源名DSN(Date Source Name)即數據源名稱。我們知道,ODBC是一種訪問數據庫的方法,只要系統(tǒng)中有相應的ODBC驅動程序,任何程序就可以通過ODBC操縱驅動程序的數據庫。比如我們系統(tǒng)中有A
37、ccess的ODBC驅動程序,那么即使我們沒有Access軟件,也可以在我們的程序中對一個Access的MDB數據庫加、刪、改記錄。而且我們根本不用知道這個數據庫是放在哪里的。我們只要寫出SQL語句,ODBC驅動程序就會幫我們做一切事情。我們在給ODBC驅動程序傳SQL指令時,即是用DSN來告訴它到底操作的是哪一個數據庫。如果數據庫的平臺變了,比如我們改用了SQL Server的數據庫,只要其中表的結構沒變,我們就不用改寫我們的程序,只要重新在系統(tǒng)中配置DSN就行了。由此可見,DSN是應用程序和數據庫之間的橋梁。二、創(chuàng)建數據庫鏈接(Connection)鏈接用以保持一些關于正在訪問的數據的一些
38、狀態(tài)信息,以及鏈接者信息。ASP文件中如果要訪問數據,必須首先創(chuàng)建與數據庫的鏈接,其語法如下:set Conn=Server.createObject(“ADOBD.CONNECTION”)這條語句創(chuàng)建了鏈接對象Conn,接下來:connstr=Provider=Microsoft.Jet.OLEDB.4.0;Data.Source=&Server.MapPath(&db&)conn.Open connstr這條語句打開鏈接,用到了DSN,本例為“connstr”。以上兩個步驟缺一不可,因為鏈接對象的創(chuàng)建與打開是兩回事,只有打開了才真正可以使用。三、創(chuàng)建數據對象(Record Set)ADO中
39、的數據對象通常保存的是查詢結果。Record Set是ADO中最復雜的對象,有許多屬性和方法。Record Set保存的是一行行的記錄,并標有一個當前記錄。以下是創(chuàng)建方法:Set Record Set=Conn.Execute(sqtStr)這條語句創(chuàng)建并打開了對象Record Set,其中Con是先前創(chuàng)建的鏈接對象,rs是一個字串,代表一條標準的SQL語句。例如:rs=“SELECT * FROM shop_books”Set Record Set=mConn.Execute(rs)這條語句執(zhí)行后,對象Record Set中就保存了表tab1中的所有記錄。四、操作數據庫我們通過調用鏈接對象的
40、Execute方法來將查詢結果返回給一個數據對象或進行插入、刪除等操作。例如:rs=“INSERT INTO tab1 VALUES(1,2)”mConn.Execute(rs)/執(zhí)行插入操作五、關閉數據對象和鏈接對象在使用了ADO對象之后要關閉它,因為它使用了一定的服務器資源。通過調用方法close實現(xiàn)關閉,然后再釋放它。Record Set.closeSet Record Set=Nothing/關閉創(chuàng)建的數據對象mConn.closeSet mConn=Nothing/關閉創(chuàng)建的鏈接對象XML的基本概念簡單地說,XML規(guī)范是一組由Word Wide Web Consortium(W3C,
41、萬維網聯(lián)盟)定義的規(guī)則,用于用普通的文本描述結構化的數據7。與HTML一樣,XML是一種標記語言,建立在放在尖括號中的標記的基礎上,它也是SGML(Standard Generalized Markup Language,標準通用標記語言)的一個子集。與HTML一樣,XML的文本本質使其數據具有高度的可移植性和廣泛的可部署性。另外,XML文檔可以在任意標準文本編輯器中創(chuàng)建和編輯。但與HTML不同的是,XML的標記集并不是固定的,它是一種元語言,允許創(chuàng)建其他標記語言。正是這種定義新標記的能力,使XML成為一種真正的可擴展語言。與HTML的另一個區(qū)別是,HTML主要用于顯示,而XML主要考慮的是數
42、據及其結構。因此,XML在其語法規(guī)則上要嚴格得多,或有“良好的格式”。在XML1.0標準中說明了XML的制定目標:(1)XML文檔應該具有良好的可讀性,并且比較清晰。(2)XML設計的置標語言應該真實、簡潔。盡管因為XML出現(xiàn)時間不長,相應的編輯瀏覽工具不成熟,而且應用有限,但隨著時間的推移,XML將成為網絡開發(fā)和數據庫的重要技術。XML具有如下一些特點:(1)內容與形式分離:在HTML中,數據內容和表現(xiàn)形式是混在一起的,這樣當改變數據的表現(xiàn)形式時,更新文檔的工作量很可觀。對于XML文檔而言,標記是包含信息的,比如關鍵字、繼承關系等,這些信息對于數據的檢索、描述起著巨大的簡化作用。當只想改變數
43、據的表現(xiàn)形式時,我們只需要修改從XML文檔中分離出的用于數據表現(xiàn)的樣式單就可以了。(2)良好的可擴展性:XML允許程序制定自己的標記集,滿足自己的需要。同樣,一個行業(yè)或某一特定人群也可以制定在自己范圍內的通用標記集。這樣,XML可以輕松地適應每一個領域而無需對語言本身作大修改。另外,要說明的是XML的數據定義也是與數據本身分離,獨立存在的。這樣使XML的標記集不斷擴大,對于有特殊要求的人,他們可以選擇需要的標記集。(3)良好的移植性:XML語言可以定義各種數據,向文本、圖像、聲音等。這些數據往往有很多種不同的格式,使得數據不能在各種系統(tǒng)之間交流,或使用額外的轉換軟件來實現(xiàn)跨平臺的交流。XML的
44、這個特性使得只要交換數據的系統(tǒng)能夠處理一種格式的文件,即XML文檔,就能處理由XML標記的各種數據,從而實現(xiàn)了不同格式數據的跨平臺交換。(4)良好的自描述性:良好的自描述性使得XML數據可以被不同的應用程序分析處理。并且XML的自描述性可以使一篇XML文檔被人理解。通過標記、元素之間的關系,數據要表達的內容就會一清二楚。系統(tǒng)的分析設計與實現(xiàn)系統(tǒng)架構設計概述系統(tǒng)架構就是一個軟件系統(tǒng)從整體到部分的最高層次的劃分。其對系統(tǒng)的開發(fā)設計與后期維護和擴展有很重要作用。系統(tǒng)架構設計除了要實現(xiàn)用戶要求的主要功能外,還應該實現(xiàn)以下的目標:(1)可擴展性:滿足用戶對新增功能的需求;(2)安全性:保護用戶的數據是一
45、個系統(tǒng)必須面對的問題;(3)可定制性:允許根據不同用戶的需求進行調整;(4)穩(wěn)定性:軟件運行時保持穩(wěn)定的性能,才可以提高用戶的工作效率。系統(tǒng)架構設計主要包括:應用軟件系統(tǒng)架構、系統(tǒng)集成架構設計、系統(tǒng)接口設計等。三層架構三層結構最簡單的說就是將系統(tǒng)分為表層、中間層和底層。表層就是與用戶打交道,中間層就是傳遞用戶的參數給底層,然后再返回底層處理的結果給表層。隨著三層架構越來越多的應用,軟件研發(fā)者細分了三層結構。圖3-1是一個瀏覽器/服務器(B/S)結構的三層細分架構應用系統(tǒng)。Browse表示層功能層數據層ServerHTML服務Cookie服務安全處理緩沖處理任務處理 業(yè)務實體類 數據操作類圖3-
46、1 B/S模式三層結構圖從圖3-1中我們可以知道,整個應用系從處理功能上被分為3層。(1)表示層:用戶接口部分,擔負著用戶與系統(tǒng)間的對話功能。(2)功能層:實現(xiàn)業(yè)務邏輯功能的算法和處理。處理表示層的輸入或調用數據層返回數據結果。功能層主要包括業(yè)務功能和數據功能兩部分。業(yè)務功能在功能層內部就可以解決,數據功能必須依靠數據層的交互才可以完成。(3)數據層:就是對數據庫中數據的管理。通常為了提高數據讀取速度,在數據庫中使用大量的存儲過程。在數據層中使用盡量少的SQL語句,便于以后的維護。MVC簡介模型-視圖-控制器(MVC)是80年代Smalltalk-80出現(xiàn)的一種軟件設計模式,現(xiàn)在已經被廣泛的使
47、用。1、模型(Model)模型是應用程序的主體部分。模型表示業(yè)務數據,或者業(yè)務邏輯。2、視圖(View)視圖是應用程序中用戶界面相關的部分,是用戶看到并與之交互的界面。3、控制器(controller) 控制器工作就是根據用戶的輸入,控制用戶界面數據顯示和更新model對象狀態(tài)。MVC 式的出現(xiàn)不僅實現(xiàn)了功能模塊和顯示模塊的分離,同時它還提高了應用系統(tǒng)的可維護性、可擴展性、可移植性和組件的可復用性 。早期的程序中,如果不注意對數功能和顯示的解耦合,常常會導致程序的復雜及難以維護。很多VB,Delphi等RAD程序都有這種問題。甚至現(xiàn)在的C#,Java有時候也會出現(xiàn)把業(yè)務邏輯寫在顯示模塊中的現(xiàn)象
48、 。管MVC設計模式很早就提出,但在Web項目的開發(fā)中引入MVC卻是步履維艱。主要原因:一是在早期的Web項目的開發(fā)中,程序語言和HTML的分離一直難以實現(xiàn)。CGI程序以字符串輸出的形式動態(tài)地生成HTML內容。后來隨著腳本語言的出現(xiàn),前面的方式又被倒了過來,改成將腳本語言書寫的程序嵌入在HTML內容中。這兩種方式有一個相同的不足之處即它們總是無法將程序語言和HTML分離。二是腳本語言的功能相對較弱,缺乏支持MVC設計模式的一些必要的技術基礎。直到基于J2EE的JSP Model 2問世時才得以改觀。它用JSP技術實現(xiàn)視圖的功能,用Servlet技術實現(xiàn)控制器的功能,用JavaBean技術實現(xiàn)模
49、型的功能。 JSP Model 1 與 JSP Model 2SUN在JSP出現(xiàn)早期制定了兩種規(guī)范,稱為Model1和Model2。雖然Model2在一定程度上實現(xiàn)了MVC,但是它的應用用并不盡如人意。 圖3-3 JSP Model 1 圖3-4 JSP Model 2 model2 容易使系統(tǒng)出現(xiàn)多個Controller,并且對頁面導航的處理比較復雜有些人覺得model2仍不夠好,于是Craig R. McClanahan 2000年5月 提交了一個WEB framework給Java Community.這就是后來的Struts。2001年7月,Struts1.0,正式發(fā)布。該項目也成為了
50、Apache Jakarta的子項目之一。三層架構的優(yōu)點(1)提高程序的可維護性:三層架構層次分明,一旦運行出現(xiàn)問題,可以快速的判斷是哪一層的問題,利于維護。(2)可以合理快速的開發(fā):因為三層之間除了調用沒有其它關系,只需先把三層之間的接口定義好,則程序員可以并行開發(fā),提高了開發(fā)進度。(3)提高了系統(tǒng)安全性:每層都有安全設置,即使表示層被攻破,那下一層的安全還有保障。(4)提高了系統(tǒng)的擴展性:三層結構最大的好處就是在擴展應用系時,改動的部分不會影響大局。 數據訪問層數據訪問層一般由兩部分組成:業(yè)務實體和數據訪問邏輯組件。在三層架構中,數據訪問層是唯一與數據庫打交道的層,所以該層的設計要盡量以提
51、高速度和安全為目標。(1)數據訪問邏輯組件數據訪問邏輯組件簡單來講就是實現(xiàn)對數據庫中數據進行操作的組件,以及實現(xiàn)數據相關操作所需的業(yè)務邏輯。(2)業(yè)務實體使用業(yè)務實體,必須明白業(yè)務實體的內部構造和關聯(lián)方式。業(yè)務實體的主要特點如下:提供對業(yè)務數據及相關功能進行編程訪問。可以使用具有復雜架構的數據來創(chuàng)建,這些復雜數據一般表現(xiàn)為數據庫中相關聯(lián)的多個表??梢宰鳛闃I(yè)務流程中的輸入輸出參數來傳遞整體數據。業(yè)務實體可序列化,以保持其狀態(tài)。業(yè)務實體不參與事務處理,只是事務處理過程中的一部分數據。事務處理由數據訪問組件完成。(3)業(yè)務實體的創(chuàng)建數據層中的業(yè)務實體類,主要功能是表示一個業(yè)務模型。業(yè)務實體與數據表之
52、間有對應關系,即業(yè)務實體類的屬性其實是數據表中的字段。系統(tǒng)需求分析系統(tǒng)定義 Java 精品課程是一個供Java學習愛好者學習與交流的學習網站。它應具有良好的可視性和較好的互動性。功能需求 Java 精品課程網站的目的是為Java學習愛好者提供良好的學習環(huán)境,以彌補學生課堂學習的不足。要求知識點廣,可視化強,交流方便,可利用性強。數據需求(1)留言信息網友留言的信息包括網友姓名,郵箱,網站,QQ,以及留言主題,留言內容和發(fā)表留言時間。(2)資源信息資源信息主要是上傳文件和發(fā)表文章的相關信息,包括資源類別編號(1.課件資源2.工具資源 3.視頻資源 4.參考源碼 5.發(fā)表文章),資源名稱,資源大小
53、,資源所在路徑,資源提供者以及資源提供時間。(3)新聞信息新聞信息是管理員后臺發(fā)布的新聞,包括新聞標題,新聞標題圖片,新聞內容以及新聞發(fā)布時間。(4)論壇信息Java學習論壇主要為Java學習愛好者提供學習,討論的平臺。論壇信息包括主題標題,主題內容以及發(fā)表時間。(5)管理員信息管理員信息包括管理員編號,管理員名稱,管理員密碼,管理員IP,以及管理員注冊時間。系統(tǒng)模塊設計Java精品課程網站整體設計主要有六個功能模塊:課程介紹,包括Java語言簡介,課程特色,教學條件以及教學方法等內容。主要讓大家了解Java來源的相關知識,以及Java教學的相關問題。課程內容,主要是Java相關知識,共十一個
54、篇章。包括:第1章介紹計算機語言的簡單演化史、語言翻譯程序和虛擬機的基本概念;第2章介紹Java開發(fā)環(huán)境JDK和Eclipse使用的一般知識;第3章以Java的主方法main()為背景,介紹Java語言的基礎知識和簡單算法;第4章介紹了Java面向對象的程序設計,這是本書的重點和難點;第5章介紹了Java異常處理;第6章介紹了Java的基本可重用類包(java.lang和java.io);第7章介紹Java圖形用戶界面;第8章介紹小應用程序(Applet);第9章介紹體現(xiàn)Java多線程編程;第10章介紹java網絡編程基礎; 第11章介紹Java與數據庫的連接JDBC技術。網上課堂,主要為學生
55、提供更加直觀的教學方式。包括在線視頻授課,學習留言,Java學習論壇,在線試題。常用下載,主要供學生下載Java學習相關資源,包括Java相關資料下載,常用工具下載,參考代碼下載以及學習教程下載。參考資料,主要為學生提供一些Java學習的相關書籍,網站網址,輔助學習。六、后臺管理,主要實現(xiàn)常用下載的相關資料上傳,留言內容管理,文章發(fā)表和文章管理,新聞管理等。 數據庫設計數據庫設計概述數據庫是信息管理系統(tǒng)的后臺支持,存儲著前臺界面所需要的信息,在信息管理系統(tǒng)中有著很重要的地位。數據庫設計的好與壞,直接影響到這個系統(tǒng)的運行效率。良好的數據庫設計,可以提高數據信息的存儲效率,保證數據信息的完整性和一
56、直性。同時,一個合理的數據庫結構有利于程序的實現(xiàn)。這里選用Access作為后臺數據庫。數據庫概念結構設計本系統(tǒng)中用到了四個實體類分別是:論壇信息實體類Article,留言本信息實體類Message,資源信息實體類Resouce,用戶信息實體類User。本系統(tǒng)模塊中用到的數據庫邏輯結構有以下幾個:(1)留言板信息表guestbook字段名稱數據類型name文本email文本web文本qq文本title文本content備注time文本 (2)論壇信息表 article字段名稱數據類型id自動編號pid數字rootid數字title文本cont備注pdate日期/時間isleaf數字(3)新聞發(fā)布
57、信息表 news字段名稱數據類型id自動編號d_title文本d_picture文本d_content備注d_date日期/時間(4)資源管理信息resource字段名稱數據類型ResourceNum自動編號ResourceClassId數字ResourceName文本ResourceIntroduction文本ResourceContentPath文本ResourceFrom文本ResourceTime日期/時間 系統(tǒng)詳細設計與實現(xiàn)網站首頁網站首頁主體部分大體分為三部分:第一部分是新聞中心,在這里可以閱讀新近發(fā)布的新聞;第二部分是網上大學堂,在這里點擊【網上留言板】直接進入留言板頁面,點擊【
58、Java學習論壇】直接進入論壇頁面,供網友進行在線交流。右側有下載區(qū),可以直接點擊下載所需軟件,點擊【更多】將進入資源下載頁面,那里有更多可供下載的資源;第三部分是日歷和公告板,供網友了解更多信息。 圖3-5 網站首頁首頁CSS控制 課程介紹在此可了解Java語言簡介,課程特色,教學條件和教學方式。 圖3-6 課程介紹界面課程內容 這里以章節(jié)的形式顯示Java語言課程知識。共十一個章節(jié)。 圖3-7 課程內容界面網頁左側用JavaScript控制樹形結構 function turnit(ss) if (ss.style.display=none) ss.style.display=; else
59、ss.style.display=none; 樹形結構的JavaScript應用 2.2 JDK的安裝,環(huán)境配置及使用 網上課堂該模塊可供大家在線學習和交流。在網上課堂頁面,點擊【播放】可以直接觀看java視頻講解,點擊【下載】可以對視頻進行下載。點擊頁面左側“網上留言板”,將直接打開留言板頁面,供大家留言;點擊“學習園地”,將打開發(fā)表的文章頁面,點擊文章名可直接瀏覽文章;點擊“Java學習論壇”,將打開論壇頁面,供大家發(fā)表主題,回復網頁問題等;點擊“在線試題”,將打開試題頁面,供大家對所學知識進行自我檢測。(1)網上課堂 圖3-8 網上課堂頁面(2)Java學習論壇論壇回復列表實現(xiàn)樹形顯示%
60、! private void tree(List articles, Connection conn, int id, int grade) String sql = select * from article where pid = + id; Statement stmt = DB.createStmt(conn); ResultSet rs = DB.executeQuery(stmt, sql); try while (rs.next() Article a = new Article(); a.initFromRs(rs); a.setGrade(grade); articles.a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電氣設備監(jiān)測傳感器選型與應用考核試卷
- 草原割草對草原植物入侵的防控考核試卷
- 數據庫的并發(fā)控制機制試題及答案
- 功耗管理在嵌入式設備中的實現(xiàn)試題及答案
- 信息系統(tǒng)監(jiān)理師考試矩陣分析試題及答案
- 嵌入式系統(tǒng)中的IO通信試題及答案
- 年金保險業(yè)務數據分析與應用考核試卷
- 軟件測試中團隊溝通的重要性試題及答案
- 網絡安全事件響應的流程與方法試題及答案
- 計算機四級軟件測試考生經驗分享試題及答案
- (二模)石家莊市2025屆高三教學質量檢測(二)英語試卷(含標準答案)
- 2025屆江蘇省南師附中高考數學考前最后一卷預測卷含解析
- AI在知識庫領域的應用
- 車輛技術檔案
- DZ/T 0430-2023 固體礦產資源儲量核實報告編寫規(guī)范(正式版)
- T∕CAME 27-2021 醫(yī)院物流傳輸系統(tǒng)設計與施工規(guī)范
- (高清版)《預應力筋用錨具、夾具和連接器應用技術規(guī)程》JGJ85-2010
- 后張法預應力空心板梁施工方案
- 師德師風年度考核表
- 健康險產說會課件
- 2022年大學英語四級真題模擬試卷及答案
評論
0/150
提交評論