此處為論文中文題目,要求居中填寫
主標(biāo)題不超過24個(gè)漢字;可加副標(biāo)題(副標(biāo)題前加破折號(hào)),副標(biāo)題與主標(biāo)題間空一行的位置
主標(biāo)題:黑體,小二,居中
副標(biāo)題:楷體_GB2312,四號(hào),居中
閱后刪除此文本" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > 塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)(論文+PPT+源碼)

塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)(論文+PPT+源碼)

時(shí)間:2023-09-05 22:00:02 | 來源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-09-05 22:00:02 來源:網(wǎng)站運(yùn)營(yíng)

塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)(論文+PPT+源碼):

此處為論文中文題目,要求居中填寫
主標(biāo)題不超過24個(gè)漢字;可加副標(biāo)題(副標(biāo)題前加破折號(hào)),副標(biāo)題與主標(biāo)題間空一行的位置
主標(biāo)題:黑體,小二,居中
副標(biāo)題:楷體_GB2312,四號(hào),居中
閱后刪除此文本框。
塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)

摘要

城市旅游產(chǎn)業(yè)的日新月異影響著村鎮(zhèn)旅游產(chǎn)業(yè)的發(fā)展變化。網(wǎng)絡(luò)、電子科技的迅猛前進(jìn)同樣牽動(dòng)著旅游產(chǎn)業(yè)的快速成長(zhǎng)。隨著人們消費(fèi)理念的不斷發(fā)展變化,越來越多的人開始注意精神文明的追求,而不僅僅只是在意物質(zhì)消費(fèi)的提高。塞北村鎮(zhèn)旅游網(wǎng)站的設(shè)計(jì)就是幫助村鎮(zhèn)發(fā)展旅游產(chǎn)業(yè),達(dá)到宣傳效果,帶動(dòng)一方經(jīng)濟(jì)發(fā)展。而在線消費(fèi)與查詢正在以高效,方便,時(shí)尚等的特點(diǎn)成為廣大互聯(lián)網(wǎng)用戶的首選。塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)與開發(fā)以方便、快捷、費(fèi)用低的優(yōu)點(diǎn)正慢慢地進(jìn)入人們的生活。人們從傳統(tǒng)的旅游方式轉(zhuǎn)變?yōu)樵诰€預(yù)覽,減輕了勞動(dòng)者的工作量。使得旅游從業(yè)人員有更多時(shí)間來獲取、了解、掌握信息。

塞北村鎮(zhèn)旅游網(wǎng)站根據(jù)當(dāng)?shù)芈糜物L(fēng)景和特色的實(shí)際情況,設(shè)計(jì)出一套適合當(dāng)?shù)芈糜涡畔⒕W(wǎng)站,通過網(wǎng)絡(luò),實(shí)現(xiàn)該網(wǎng)站的推廣從而達(dá)到宣傳的效果。

本系統(tǒng)在設(shè)計(jì)方面采用JSP和Java語言以及html腳本語言,同時(shí)采用B/S模式,進(jìn)行各個(gè)界面和每個(gè)功能的設(shè)計(jì)與實(shí)現(xiàn),后臺(tái)管理與設(shè)計(jì)選用了SQL Server 2005數(shù)據(jù)庫(kù),前臺(tái)設(shè)計(jì)與后臺(tái)管理相結(jié)合,共同完成各功能模塊的功能。

關(guān)鍵詞:SQL2005 ;塞北村鎮(zhèn)旅游;JSP ;B/S

The design and implementation of the tourism website in the town of saibei

Abstract

The rapid development of the urban tourism industry has led to the rapid development of the tourism industry in the village. The rapid advance of the Internet and electronic technology has also led to the rapid development of the tourism industry. With the improvement of people's living standards, more and more people are paying attention to the pursuit of spiritual civilization, and the consumption idea is constantly changing. The design of the tourism site in the town of saibei is to help the village development tourism industry, to achieve the publicity effect, to drive one side economic development. And the online consumption and the query is in the high efficiency, convenience, fashion and so on the characteristic become the first choice of the Internet user. The design and development of the tourism website in the town of saibei are slowly entering people's lives with the advantages of convenience, speed and cost. People have switched from traditional travel to online previews, reducing the workload of workers. The travel industry has more time for information, information and information.

Camels rural tourism website according to the actual situation of local tourism landscape and characteristic, design a set of suitable for the local tourist information web site, through the network, realize the website promotion so as to achieve the effect of propaganda.

This system using JSP and Java language in terms of design and HTML scripting language, using B/S mode at the same time, for each interface and the design and implementation of each function, background management and design chose the SQL Server 2005 database, the front desk design combined with background management, complete the function of each function module.

Keywords: SQL2005; JSP; B/S in villages and towns;

目錄

塞北村鎮(zhèn)旅游網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)I

摘要I

AbstractII

1 概述1

1.1 項(xiàng)目研究背景1

1.2 研究目的及意義1

1.3 開發(fā)軟件介紹1

1.3.1技術(shù)介紹1

1.3.2 SQL2005數(shù)據(jù)庫(kù)3

2 系統(tǒng)分析4

2.1可行性研究4

2.1.1經(jīng)濟(jì)上的可行性4

2.1.2技術(shù)上的可行性4

2.1.3操作上的可行性4

2.2開發(fā)結(jié)構(gòu)分析4

2.3功能需求分析5

2.4 數(shù)據(jù)流圖6

2.5 業(yè)務(wù)流程分析7

2.6 數(shù)據(jù)字典8

3 網(wǎng)站總體設(shè)計(jì)11

3.1系統(tǒng)功能描述11

3.2系統(tǒng)界面設(shè)計(jì)11

3.3系統(tǒng)功能結(jié)構(gòu)圖11

3.4系統(tǒng)設(shè)計(jì)目標(biāo)12

3.5系統(tǒng)實(shí)現(xiàn)的軟硬件平臺(tái)13

4 數(shù)據(jù)庫(kù)設(shè)計(jì)14

4.1數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)14

4.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)17

4.3本章小結(jié)19

5 系統(tǒng)詳細(xì)設(shè)計(jì)20

5.1主界面模塊設(shè)計(jì)20

5.2用戶注冊(cè)模塊設(shè)計(jì)24

5.3旅游景點(diǎn)模塊設(shè)計(jì)26

5.4酒店預(yù)定模塊設(shè)計(jì)28

5.5 后臺(tái)管理設(shè)計(jì)30

5.5.1后臺(tái)登錄模塊設(shè)計(jì)33

5.5.2旅游景點(diǎn)模塊設(shè)計(jì)35

5.5.3線路管理模塊設(shè)計(jì)38

6 系統(tǒng)測(cè)試40

6.1 測(cè)試的任務(wù)及目標(biāo)40

6.1.1測(cè)試的任務(wù)40

6.1.2測(cè)試的重要性及目標(biāo)40

6.2測(cè)試方案41

6.2.1模塊測(cè)試41

6.2.2集成測(cè)試41

6.2.3驗(yàn)收測(cè)試42

6.2.4平行運(yùn)行42

6.3系統(tǒng)評(píng)價(jià)42

6.4本章小結(jié)42

結(jié)論43

附錄44

致謝49

參考文獻(xiàn)50

英文原文52

1.1 GENERALIZE52

1.2 SOURCE OF JSP53

1.3JSP CHARACTERISTICS55

1.4JSP MECHANISM56

中文翻譯59

1.1 概述59

1.2 JSP的由來60

1.3 JSP的特點(diǎn)60

1.4 JSP的機(jī)制61

1 概述

1.1 項(xiàng)目研究背景

社會(huì)經(jīng)濟(jì)的發(fā)展和提高潛移默化的影響了人們對(duì)精神消費(fèi)的日益看中與提高,所以越來越多的人們開始選擇更健康有趣的生活活動(dòng),隨之而來的旅游便成了人們消費(fèi)的必選。隨著旅客需求的日趨豐富和個(gè)性化,這勢(shì)必將推動(dòng)我國(guó)第三產(chǎn)業(yè)、旅游服務(wù)行業(yè)的迅猛發(fā)展前進(jìn)。旅游行業(yè)如何能夠提供多樣化、個(gè)性化的服務(wù)來滿足人們的多方面需求,這是一個(gè)值得深究的課題。旅游行業(yè)快速成長(zhǎng)的同時(shí),各個(gè)行業(yè)相互間的聯(lián)系與競(jìng)爭(zhēng)也就不斷加強(qiáng)?;ヂ?lián)網(wǎng)時(shí)代的大背景環(huán)境下,電子信息服務(wù)的將會(huì)是一個(gè)最便捷最省力最有效的服務(wù)方式。這就要求旅游行業(yè)能夠提供一個(gè)綜合性服務(wù)的信息平臺(tái),同時(shí)必須擁有強(qiáng)大的后臺(tái)支撐、智能化的信息提供和服務(wù),快速有效的信息應(yīng)答,多種多樣的信息功能等等。雖然目前我國(guó)電子信息科技迅猛發(fā)展,但是也有差強(qiáng)人意的地方,比如說,1.交互性差。多數(shù)信息系統(tǒng)是封閉性的,缺乏與各種其他信息系統(tǒng)的共享與交互,這就造成了信息資源的浪費(fèi)和利用率低等問題。2.實(shí)時(shí)性差。系統(tǒng)在開發(fā)時(shí)存在系統(tǒng)漏洞,不能很好的對(duì)空間信息進(jìn)行全方位的挖崛與利用。用戶所需要的信息可能不能及時(shí)得到跟新與回復(fù)。這是擺在多數(shù)旅游系統(tǒng)面前的一個(gè)現(xiàn)實(shí)需求。3.個(gè)性化服務(wù)缺乏。大多數(shù)旅游系統(tǒng)還不完善,沒有按實(shí)際情況來滿足用戶多方面的需求,而是片面的加入一些沒有必要的或者說運(yùn)用率并不高的功能。4.旅游系統(tǒng)的單一化。不難看出,大多數(shù)旅游系統(tǒng)功能服務(wù)基本相同,沒有自己的特色,創(chuàng)新程度不強(qiáng)。電子科技迅速發(fā)展,也需要我們不斷的去追求創(chuàng)新。

1.2 研究目的及意義

隨著旅游業(yè)的迅猛發(fā)展,21世紀(jì)的中國(guó)將會(huì)成為世界上最大的旅游國(guó)家,對(duì)于旅游者而言獲取相關(guān)的旅游信息以便于做出最優(yōu)的旅游選擇是十分必要的。塞北村鎮(zhèn)旅游網(wǎng)站中以幫助客戶怎么樣才能更快速方便的找自己旅游公司咨詢和旅游信息。因此開發(fā)塞北村鎮(zhèn)旅游網(wǎng)站可以發(fā)布塞北村鎮(zhèn)旅游信息,讓客戶自己在網(wǎng)上就可以方便快捷的了解到旅行社的所有旅行動(dòng)態(tài),大大方便了旅行者對(duì)旅游信息的查詢和獲取,旅行者也更愿意在電子信息平臺(tái)下進(jìn)行咨詢和消費(fèi)。

1.3 開發(fā)軟件介紹

1.3.1技術(shù)介紹

JSP是一種能實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的技術(shù)。Sun公司最先提倡發(fā)行,并由多家公司共同開發(fā)與完善的。JSP技術(shù)通俗來說其實(shí)就是在普通的網(wǎng)頁HTML文件中首先加上Java程序段來實(shí)現(xiàn)具體功能,然后再根據(jù)需要添加JSP標(biāo)記(tag)進(jìn)行記錄,這樣二者結(jié)合就可以形成JSP文件。其功能特別強(qiáng)大,基本可以實(shí)現(xiàn)大多數(shù)動(dòng)態(tài)網(wǎng)頁所需要的各種效果。用JSP技術(shù)所開發(fā)的網(wǎng)頁具有跨平臺(tái)的特點(diǎn),在不同的操作系統(tǒng),例如Windows,Linux,Winxp等操作系統(tǒng)上都可以運(yùn)行起來。在服務(wù)器端進(jìn)行大部分復(fù)雜的程序操作和功能實(shí)現(xiàn)操作,而這些并不需要用戶直接參與或操作,最后的結(jié)果通過網(wǎng)絡(luò)傳送給用戶。這樣就減輕了用戶工作量的同時(shí)也減少了瀏覽器的負(fù)擔(dān)。因?yàn)橛行g覽器并不支持Java語言,然而這不影響功能操作的實(shí)現(xiàn),同樣能夠登錄JSP網(wǎng)頁,達(dá)到預(yù)想效果。

Java server page(以下簡(jiǎn)稱JSP)為servlet技術(shù)的簡(jiǎn)化。JSP的功用在于它實(shí)現(xiàn)了Html語法中以<%, %>形式的java擴(kuò)張。但是,值得注意的是,因?yàn)镴SP與Servlet均在服務(wù)器端運(yùn)行,故而往往以HTML文本為主要形式呈現(xiàn)客戶端面前,所以當(dāng)有 需求時(shí),客戶端可以便捷地通過瀏覽器來實(shí)現(xiàn)瀏覽。當(dāng)網(wǎng)頁服務(wù)器(web)遇到訪問JSP提出的要求時(shí),需要進(jìn)行以下兩個(gè)步驟:首先執(zhí)行程序段,后將結(jié)果與htlm返回,以便系統(tǒng)更好運(yùn)行。至于為何要進(jìn)行的Java代碼段的插入操作,其主要目的在于進(jìn)行數(shù)據(jù)庫(kù)的連接、網(wǎng)頁重定向等等,以滿足網(wǎng)頁動(dòng)態(tài)實(shí)現(xiàn)所需的各類功能。
同時(shí),我們也應(yīng)該認(rèn)識(shí)到JSP技術(shù)所使用的倆種程序:即類XML的tags和scriptlets,這些都是用Java語言實(shí)現(xiàn)的。另一方面,對(duì)于服務(wù)端也可以通過tags和scriptlets實(shí)現(xiàn)對(duì)資源的訪問。除此之外,JSP將網(wǎng)頁邏輯和網(wǎng)頁設(shè)計(jì)分離開來,大大方便了編程人員實(shí)現(xiàn)對(duì)應(yīng)用程序的設(shè)計(jì)與開發(fā)。同時(shí),由于JSP的發(fā)展運(yùn)用,使得網(wǎng)頁設(shè)計(jì)變得更加靈活便捷,也使得網(wǎng)頁的實(shí)現(xiàn)更加容易。

Html語言是一種腳本語言,是一種規(guī)范和標(biāo)準(zhǔn),在所有的開發(fā)語言中,是較為簡(jiǎn)單易學(xué)的一種,它有很多標(biāo)簽,運(yùn)用標(biāo)簽就可以實(shí)現(xiàn)很多靜態(tài)頁面效果。雖然html語言相對(duì)其他語言來說比較簡(jiǎn)單,但是他能夠?qū)崿F(xiàn)的功能卻很強(qiáng)大,因此受到廣大用戶的熱愛。他可以實(shí)現(xiàn)靜態(tài)網(wǎng)頁設(shè)計(jì),是學(xué)習(xí)前端設(shè)計(jì)的一門基礎(chǔ)性語言。Html的結(jié)構(gòu)包括頭和主體部分,是WWW的描述語言。

Java語言是一種完全面向?qū)ο蟮恼Z言。具有繼承,多態(tài)性,封裝性等特點(diǎn),還具有垃圾自動(dòng)回收機(jī)構(gòu),程序員不用考慮內(nèi)存使用不足的情況,因?yàn)閮?nèi)存在程序員不再使用后的一段時(shí)間內(nèi)會(huì)自動(dòng)釋放。而且具有跨平臺(tái)性。這些別的語言所沒有的特點(diǎn)讓java能夠快速發(fā)展強(qiáng)大起來,它吸收了計(jì)算機(jī)領(lǐng)域的各種最新成果,功能十分強(qiáng)大。Java的應(yīng)用也是到處可見,從計(jì)算機(jī)到移動(dòng)平臺(tái),從辦公軟件到手機(jī)應(yīng)用,從小型系統(tǒng)到大型企業(yè),Java身影無處不在。Java能得到如此廣泛的應(yīng)用的另一個(gè)重要原因是因?yàn)閖ava語言是動(dòng)態(tài)的,它可以適應(yīng)動(dòng)態(tài)變化環(huán)境。

Myeclipse其實(shí)是在經(jīng)過一系列已有軟件產(chǎn)品的補(bǔ)充和更新的基礎(chǔ)上產(chǎn)生出來的,是一款功能豐富的企業(yè)級(jí)開發(fā)環(huán)境。在多種程序開發(fā)、服務(wù)器效能的提高、功能實(shí)現(xiàn)等各個(gè)方面起到了不可估量的用處,很大程度上增強(qiáng)了開發(fā)效率。總之,Myeclipse和eclipse有著千絲萬縷的關(guān)系,它其實(shí)就相當(dāng)于一個(gè)功能插件,并且它具有豐富的開發(fā)環(huán)境,使用范圍廣泛,能夠?qū)崿F(xiàn)多種功能,支撐目前流行的幾乎所有開源工具。像JavaServlet,JSP,JSF,Spring,AJAX等等。而在結(jié)構(gòu)上,Myeclipse的特征有WEB開發(fā)工具,應(yīng)用程序服務(wù)器的連接器等等7大類(在此只舉出2類)。這種結(jié)構(gòu)布局使得模塊間各自獨(dú)立,各個(gè)模塊各自運(yùn)行,他們之間互不影響,單獨(dú)完成各自的升級(jí)或者擴(kuò)展。MyEclipse 是基于Eclipse插件的解決方案,功能強(qiáng)大并且支持十分廣泛,支持云開發(fā)、java web開發(fā)、移動(dòng)開發(fā)、優(yōu)化開發(fā)、RESTful Web服務(wù)開發(fā)、保持Maven、架構(gòu)、企業(yè)交付、測(cè)試等等,此外,Myeclipse版本更新迅速,不斷完善已有功能,彌補(bǔ)漏洞,方便開發(fā)。MyEclipse具有完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,是一款功能豐富的JavaEE集成開發(fā)環(huán)境。

MyEclipse這一開發(fā)工具,每個(gè)版本都有其各自的特點(diǎn),本文使用的MyEclise8.5。8.5版本經(jīng)過長(zhǎng)期的投入使用,較以前舊的版本修正了許多bug,性能比較穩(wěn)定,界面比較美觀,用起來也方便,操作較為簡(jiǎn)單。但是就兼容性來說,Myeclipse6.5相對(duì)比較好。而8.5版本容量大,用起來可能會(huì)存在卡的情況。但是除此之外,8.5也有很多優(yōu)點(diǎn),比如說它用起來十分靈活,對(duì)前臺(tái)開發(fā)的支持性比較好。其實(shí),每個(gè)版本都有自己的特點(diǎn),具體選用哪一版本,還需要根據(jù)實(shí)際情況,結(jié)合所開發(fā)項(xiàng)目進(jìn)行選擇。

另外,MyEclipse還有很好的自動(dòng)查錯(cuò)功能、自動(dòng)補(bǔ)全功能。程序員在進(jìn)行項(xiàng)目開發(fā)的時(shí)候,可以方便準(zhǔn)確的找出出錯(cuò)的地方。此外,自動(dòng)補(bǔ)全功能也可以大大節(jié)省程序員的編程時(shí)間,極大的提高了工作效率。總之,在進(jìn)行軟件系統(tǒng)開發(fā)時(shí),一個(gè)得心應(yīng)手的開發(fā)環(huán)境是十分必要的,這一點(diǎn)是會(huì)影響到開發(fā)的效率。Myeclipse很好的解決了這樣的難題,為軟件開發(fā)提供了便利條件。

Tomcat服務(wù)器是一個(gè)免費(fèi)的應(yīng)用服務(wù)器,他的封面設(shè)計(jì)以一個(gè)動(dòng)物的素描為靈感,正是因?yàn)檫@個(gè)設(shè)計(jì)理念,所以該項(xiàng)目以一個(gè)英文的動(dòng)物名字為項(xiàng)目名稱。因?yàn)槠涿赓M(fèi)又好用,功能強(qiáng)大,所以成為大多數(shù)程序員的首選。Tomcat是一個(gè)小型的,輕量級(jí)的軟件產(chǎn)品,他在啟動(dòng)運(yùn)行時(shí)占用非常少的內(nèi)存資源和系統(tǒng)開銷,擴(kuò)展性能比較好,支持多種應(yīng)用需求,如果一個(gè)開發(fā)員對(duì)某一項(xiàng)功能實(shí)現(xiàn)特別感興趣,他就直接可以將此功能加入到其中。Tomcat可以獨(dú)立運(yùn)行,身為網(wǎng)站的服務(wù)器,可以加載動(dòng)態(tài)網(wǎng)頁。

1.3.2 SQL2005數(shù)據(jù)庫(kù)

SQL 數(shù)據(jù)庫(kù)設(shè)計(jì)簡(jiǎn)單易懂,功能相對(duì)來說比較全面,為軟件產(chǎn)品的開發(fā)應(yīng)用提供了良好的環(huán)境和數(shù)據(jù)幫助。關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)為數(shù)據(jù)庫(kù)提供了新的功能,使得信息能夠更好的存儲(chǔ)和組織,完善了SQL數(shù)據(jù)庫(kù),這樣一來,程序員可以運(yùn)用這一優(yōu)勢(shì),在軟件產(chǎn)品開發(fā)過程中,能夠?yàn)橛脩糸_發(fā)出高質(zhì)量高性能的數(shù)據(jù)應(yīng)用軟件。此外,Microsoft SQL Server 2005 還整合了各種功能:例如分析、集成等。用戶憑借此完成了對(duì)方案的構(gòu)建。SQL2005數(shù)據(jù)庫(kù)為實(shí)現(xiàn)系統(tǒng)后臺(tái)與前臺(tái)連接起到了十分重要的地位。一個(gè)沒有連接數(shù)據(jù)庫(kù)的系統(tǒng)是無法實(shí)現(xiàn)任何有價(jià)值的功能的。數(shù)據(jù)庫(kù)可以幫助開發(fā)人員整合管理數(shù)據(jù),有效實(shí)現(xiàn)系統(tǒng)所需功能,同時(shí)還可以進(jìn)行權(quán)限的設(shè)置和數(shù)據(jù)的添加??傊琒QL可以滿足人們基本的幾乎所有要求,為其提供一套經(jīng)濟(jì),有效的開發(fā)策略,使得用戶付出最少的代價(jià)獲得最多的回報(bào)。

2 系統(tǒng)分析

2.1可行性研究

2.1.1經(jīng)濟(jì)上的可行性

實(shí)現(xiàn)塞北村鎮(zhèn)旅游網(wǎng)站所需要花費(fèi)的時(shí)間,人力,金錢成本較該網(wǎng)站投入使用時(shí)能夠獲得的收益來講,差距是比較大的。所以,從經(jīng)濟(jì)方面討論時(shí),開發(fā)該網(wǎng)站顯然是比較合理的。這樣可以對(duì)當(dāng)?shù)卮彐?zhèn)旅游信息進(jìn)行有效的整合和集中,及時(shí)的發(fā)布與更新,可以使旅客及時(shí)獲得各種景點(diǎn)、住宿、攻略等信息,方便得使消費(fèi)者獲得想要的信息,同時(shí)使企業(yè)盈利。這樣可以為當(dāng)?shù)亟?jīng)濟(jì)帶來更好的工作效益和社會(huì)效益,開發(fā)出本網(wǎng)站可以減少旅游人力成本,而且管理便捷,各功能實(shí)現(xiàn)迅速,以對(duì)數(shù)據(jù)實(shí)施有效的管理。管理上的有效便捷,信息得以及時(shí)獲取,選擇上的方便等所能達(dá)到的利益是不可估量的,這樣幫助村鎮(zhèn)實(shí)現(xiàn)信息化的同時(shí)幫助他們宣傳家鄉(xiāng)文化、提高收入。所以,從經(jīng)濟(jì)這個(gè)角度來說,可以進(jìn)行該網(wǎng)站的建設(shè)。

2.1.2技術(shù)上的可行性

技術(shù)是否成熟關(guān)乎該網(wǎng)站能否可以順利進(jìn)行,是不可忽視的一個(gè)重要方面。技術(shù)可行性的研究是指的目前而言已知的的各項(xiàng)技術(shù)中哪些可以高質(zhì)量的完成對(duì)該軟件系統(tǒng)的開發(fā)。同時(shí)要兼顧已有的軟硬件配置的要求。就本系統(tǒng)而言,需要軟硬件配置較高的PC機(jī),Windows操作系統(tǒng),另外,需要安裝SQL2005數(shù)據(jù)庫(kù)服務(wù)器,JDK, Myeclipse,tomcat,任意瀏覽器,配置好基本的所需環(huán)境以后,采用合java,JSP語言進(jìn)行旅游網(wǎng)站的設(shè)計(jì)、開發(fā)與運(yùn)行。從技術(shù)上來說,這些基本的軟件系統(tǒng)開發(fā)所需技術(shù)是不成問題的。

2.1.3操作上的可行性

首先,進(jìn)行網(wǎng)站設(shè)計(jì)的幾種軟件都具有較高的普及性和較高的可操作性,設(shè)計(jì)人員可以較為輕松地使用軟件對(duì)塞北村鎮(zhèn)旅游網(wǎng)站進(jìn)行設(shè)計(jì)和完善。第二,管理員可對(duì)客戶進(jìn)行驗(yàn)證,對(duì)信息平臺(tái)的信息進(jìn)行發(fā)布,修改,管理,還可以實(shí)現(xiàn)酒店預(yù)訂,修改,刪除等各種功能。第三,客戶可以在提示下進(jìn)行一系列的留言,預(yù)訂,查看等各項(xiàng)功能。而這些功能都是比較簡(jiǎn)單可行的,這些功能也比較普遍化,一般人員勝任是沒有問題的。這樣說來,從操作上來說是可行的。

結(jié)合以上分析與介紹,從經(jīng)濟(jì)、技術(shù)、操作等方面來說,現(xiàn)有的有效環(huán)境和條件、技術(shù)是可以開發(fā)出一個(gè)具有較高可操作性和功能強(qiáng)大的個(gè)性化旅游網(wǎng)站,實(shí)現(xiàn)各項(xiàng)功能,完成測(cè)試。

2.2開發(fā)結(jié)構(gòu)分析

B/S模式即瀏覽器/服務(wù)器模式體系結(jié)構(gòu),這對(duì)較為小型的系統(tǒng)來說更加適用。他最大的優(yōu)勢(shì)在于不需要客戶端的維護(hù),適用于客戶端需求較為多變的系統(tǒng)。這對(duì)客戶來說,該模式界面友好,具有實(shí)用性。所以塞北村鎮(zhèn)旅游網(wǎng)站采用通用性好,成本低,開發(fā)相對(duì)簡(jiǎn)單的B/S模式體系結(jié)構(gòu)。管理方便也是該系統(tǒng)的又一個(gè)優(yōu)勢(shì),此外,針對(duì)用戶來講,該網(wǎng)站用戶數(shù)量大,變化性和流動(dòng)性也強(qiáng)。經(jīng)過上述分析探討,最終認(rèn)為B/S模式是該網(wǎng)站的最好選擇。如圖2-1B/S模式圖所示:

圖2-1 B/S模式圖

B/S三層模式結(jié)構(gòu)所具有的特征包括:

  1. 開放的標(biāo)準(zhǔn):B/S體系標(biāo)準(zhǔn)由國(guó)際組織統(tǒng)一規(guī)定,這樣就使得該體系具有很強(qiáng)的通用性,同時(shí)也使得該系統(tǒng)就有很強(qiáng)的跨平臺(tái)性。它的使用方便了廣大用戶和相關(guān)企業(yè),在不同的系統(tǒng)不同的平臺(tái)上都可以運(yùn)行,不受限制。
  2. 較低的開發(fā)和維護(hù)成本:B/S體系結(jié)構(gòu)優(yōu)點(diǎn)在于不用對(duì)客戶端進(jìn)行專門的維護(hù),用戶只需要有一個(gè)瀏覽器即可。這樣就大大減少了開發(fā)維護(hù)成本,需要做的僅僅對(duì)系統(tǒng)和服務(wù)器進(jìn)行升級(jí),從而便大幅度地降低了維護(hù)開發(fā)所消耗的資金。
  3. 用戶使用簡(jiǎn)單,界面友好:B/S體系結(jié)構(gòu)對(duì)于用戶來說只是一個(gè)簡(jiǎn)單的瀏覽器。用戶對(duì)面的不是一堆復(fù)雜的數(shù)據(jù)和冗雜的代碼操作,而是快捷方便的點(diǎn)擊交互式的顯示操作。這樣就減少了客戶端開發(fā)成本,用戶不必在意內(nèi)在實(shí)現(xiàn)過程,只需要了解自己需求而進(jìn)行相應(yīng)的圖文式操作。
根據(jù)以上所分析不難看出,B/S是該網(wǎng)站系統(tǒng)最合適的體系結(jié)構(gòu)。它開發(fā)成本小,簡(jiǎn)單便捷,容易實(shí)現(xiàn)的特點(diǎn)是我們的不二選擇。所以,該網(wǎng)站系統(tǒng)基于B/S體系結(jié)構(gòu)實(shí)現(xiàn)了旅游信息發(fā)布,線路管理,景點(diǎn)管理等功能。

2.3功能需求分析

需求分析在軟件開發(fā)周期中起著十分重要的作用也可以說起著決定性作用,它是每一個(gè)軟件產(chǎn)品在設(shè)計(jì)與實(shí)現(xiàn)之前必須進(jìn)行的。當(dāng)然了,該項(xiàng)工作如此重要,一定也有它的難度。在進(jìn)行需求時(shí),了解用戶的需求是最關(guān)鍵的。旅游網(wǎng)站面向廣大網(wǎng)絡(luò)在線用戶,它的特點(diǎn)就在于電子科技的廣泛應(yīng)用。根據(jù)該特點(diǎn),我們可以通過網(wǎng)上網(wǎng)上調(diào)查,問卷調(diào)查,走訪等方式了解網(wǎng)站需求。如何滿足廣大用戶需要,盡可能多的細(xì)化網(wǎng)站功能就是擺在眼前的一個(gè)問題。同樣的,不光用戶需求需要注意,了解管理者的需求也同樣很重要,一般來說,網(wǎng)站后臺(tái)的主要對(duì)象主要是系統(tǒng)管理者,為了滿足管理者的需求,開發(fā)出合適產(chǎn)品,在實(shí)現(xiàn)網(wǎng)站之前,需要提前與管理者進(jìn)行溝通,需要系統(tǒng)實(shí)現(xiàn)什么功能,整合統(tǒng)計(jì)什么數(shù)據(jù),完成哪些便捷操作。最后,還應(yīng)該使網(wǎng)站具有較好的系統(tǒng)伸縮性和容錯(cuò)性。因?yàn)椴还苁怯脩暨€是系統(tǒng)管理者,他們的需求會(huì)根據(jù)實(shí)際情況,時(shí)間推移發(fā)生不斷的變換,所以,系統(tǒng)應(yīng)該盡可能提高容錯(cuò)性和可維護(hù)性,避免后期修改消耗人力物力。下面對(duì)該網(wǎng)站需求功能進(jìn)行研究探討:

塞北村鎮(zhèn)旅游網(wǎng)站的功能比較全面豐富,盡量滿足大部分旅游客戶的要求,在網(wǎng)站的首頁顯示了該網(wǎng)站的具體實(shí)現(xiàn)模塊部分。包含塞北人文、塞北故事、酒店信息 、旅游景點(diǎn)、 自駕游線路 、旅游地圖查詢、天氣預(yù)報(bào) 、在線評(píng)價(jià) 、用戶注冊(cè)、 后臺(tái)管理等功能:后臺(tái)管理包括:塞北人文、塞北故事、酒店信息、旅游景點(diǎn)、自駕游線路、酒店預(yù)訂,在線留言、用戶增加刪除修改、系統(tǒng)等的管理。

上邊所述的功能是基本的旅游網(wǎng)站所需功能,它涵蓋了一般客戶的需求,也是此系統(tǒng)的主體功能。此外,在開發(fā)過程中還要不斷的完善和修改,增加一些個(gè)性化和細(xì)節(jié)功能,使得系統(tǒng)具有很好的完整性和可操作性。

2.4 數(shù)據(jù)流圖

進(jìn)行業(yè)務(wù)流程分析也是一個(gè)重要環(huán)節(jié)。他的分析應(yīng)該參照信息流動(dòng)的整個(gè)過程,對(duì)每一個(gè)環(huán)節(jié)進(jìn)行業(yè)務(wù)處理、數(shù)據(jù)流圖的調(diào)查分析。數(shù)據(jù)流圖可以清除的表明計(jì)算機(jī)軟件系統(tǒng)的工作情況,他是一種圖形表示。這樣,可以簡(jiǎn)化工作難度,便于開發(fā)人員準(zhǔn)確表達(dá)交流。同時(shí)便于開發(fā)端,維護(hù)端,測(cè)試端,應(yīng)用端的相互交流合作。也就是說,數(shù)據(jù)流圖不僅適合專業(yè)人員讀取了解方便,也同樣適用于非專業(yè)人員。在需求分析中是一種便于修改和交流的表達(dá)工具。

  1. 如圖2-2總體流程圖所示:
圖2-2 總體流程圖

(2)數(shù)據(jù)流程分析,如圖2-3用戶流程所示:

圖2-3 用戶流程圖

2.5 業(yè)務(wù)流程分析

業(yè)務(wù)流程分析在需求分析中的占有十分重要的分量。業(yè)務(wù)流程分析其實(shí)就是對(duì)產(chǎn)品業(yè)務(wù)處理過程的詳細(xì)細(xì)節(jié)進(jìn)行反應(yīng),也就是信息的流動(dòng)過程的具體描述。業(yè)務(wù)流程分析需要根據(jù)具體業(yè)務(wù)畫出流程中的具體活動(dòng),還有各個(gè)活動(dòng)相互間的聯(lián)系與邏輯,流程的輸入輸出以及流程的執(zhí)行者等等。流程分析方法有順向法、查詢法、具體分析法、邏輯推理法。

業(yè)務(wù)流程分析可以幫助系統(tǒng)開發(fā)人員理清工作流程順序,同時(shí)更好的分析業(yè)務(wù)相互間聯(lián)系的因素關(guān)系。了解網(wǎng)站具體要求和業(yè)務(wù)需要,從而形成科學(xué)的、合理的工作管理和運(yùn)作方式。而具體流程圖的實(shí)現(xiàn)過程還具有相應(yīng)的規(guī)范和標(biāo)準(zhǔn),一般具有所規(guī)定的特定的一些符號(hào)、方框、箭頭和線段來表示。具體如圖2-4業(yè)務(wù)流程分析圖所示:

圖2-4 業(yè)務(wù)流程分析圖

2.6 數(shù)據(jù)字典

對(duì)數(shù)據(jù)流程中的各個(gè)元素進(jìn)行詳細(xì)的說明是數(shù)據(jù)字典的主要目的和用途。它在系統(tǒng)開發(fā)階段有著重要作用。數(shù)據(jù)字典中包括數(shù)據(jù)類型、字段、屬性等等。有了數(shù)據(jù)字典,數(shù)據(jù)庫(kù)在設(shè)計(jì)的時(shí)候也可以根據(jù)數(shù)據(jù)字典中的各元素成分進(jìn)行數(shù)據(jù)的相關(guān)定義。下面根據(jù)具體的實(shí)例進(jìn)一步說明數(shù)據(jù)字典中元素的的條目,如表2-1數(shù)據(jù)元條目、表2-2數(shù)據(jù)結(jié)構(gòu)條目、表2-3數(shù)據(jù)流條目、表2-4 數(shù)據(jù)存儲(chǔ)條目、表2-5 處理過程條目和表2-6 外部實(shí)體條目所示:

表2-1 數(shù)據(jù)元素條目

調(diào)入年份




表2-2 數(shù)據(jù)結(jié)構(gòu)條目

表2-3 數(shù)據(jù)流條目

表2-4 數(shù)據(jù)存儲(chǔ)條目

表2-5 處理過程條目

表2-6 外部實(shí)體條目

以上簡(jiǎn)單列舉了一部分?jǐn)?shù)據(jù)字典條目。根據(jù)上述數(shù)據(jù)條目的具體分析,不難得出看出,數(shù)據(jù)結(jié)構(gòu)中可以包含多個(gè)數(shù)據(jù)項(xiàng)以及數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)字典就是將數(shù)據(jù)中的各個(gè)成分加以組織說明,減輕系統(tǒng)開發(fā)人工作量,達(dá)到最好的工作效率。

3 網(wǎng)站總體設(shè)計(jì)

3.1系統(tǒng)功能描述

塞北村鎮(zhèn)旅游網(wǎng)站的功能主要分為倆部分:前臺(tái)界面管理和后臺(tái)數(shù)據(jù)庫(kù)管理。它的主要功能包括:對(duì)塞北人文的增加刪除修改查看 ,對(duì)塞北故事的增加刪除修改查看,對(duì)酒店信息進(jìn)行增加刪除修改預(yù)訂,對(duì)旅游景點(diǎn)的信息進(jìn)行增加刪除修改查看,還有路線查詢,天氣預(yù)報(bào)、用戶評(píng)價(jià)、管理員后臺(tái)登錄管理。這些具體的板塊涵蓋了網(wǎng)站的設(shè)計(jì)的總體布局。

首頁塞北人文板塊、塞北故事板塊、酒店信息板塊、旅游景點(diǎn)板塊、自駕游線路板塊、用戶評(píng)論板塊、在線留言板塊、天氣預(yù)報(bào)板塊都有自己具體實(shí)現(xiàn)的操作,供客戶進(jìn)行選擇和查看、管理。

3.2系統(tǒng)界面設(shè)計(jì)

一個(gè)美觀、清晰、操作便捷的界面可以增加用戶量,吸引更多的人進(jìn)行訪問。通過對(duì)界面的訪問,用戶可以在最短時(shí)間內(nèi)了解該網(wǎng)站的功能、屬性、特點(diǎn)等等,同樣也可以滿足自己的需求。所以,在進(jìn)行界面設(shè)計(jì)的時(shí)候一定要多花時(shí)間使得界面具有吸引力并且以最少的語言和圖形傳達(dá)最多的信息。該網(wǎng)站在設(shè)計(jì)界面的時(shí)候是根據(jù)以下幾個(gè)方面進(jìn)行的:

  1. 圖文搭配。在進(jìn)行界面設(shè)計(jì)的時(shí)候,太多的文字會(huì)使得用戶覺得晦澀難懂,不愿意多花時(shí)間去進(jìn)行研究。所以很有必要用圖片進(jìn)行展示,再加以必要的簡(jiǎn)潔的文字說明,這樣用戶會(huì)節(jié)省大量的時(shí)間去瀏覽更多網(wǎng)頁并且可以獲得自己想要的信息。塞北旅游網(wǎng)站界面設(shè)計(jì)采用文字加圖片的形式,文字可以直觀的向用戶傳遞具體模塊構(gòu)造與功能,而圖片可以更加形象的讓用戶感受到旅游地方的具體實(shí)景。
  2. 界面設(shè)計(jì)應(yīng)當(dāng)美觀大方。太多的文字會(huì)使人們感覺到無聊不愿意閱讀,然而太多的圖片、動(dòng)畫也同樣會(huì)使得界面太過花哨,凡事應(yīng)該講究適度原則。所以,在進(jìn)行界面設(shè)計(jì)的時(shí)候切記要做到美觀大方。塞北村鎮(zhèn)旅游網(wǎng)站在設(shè)計(jì)的時(shí)候秉承這個(gè)原則,整個(gè)界面大方又不失美感。既不是一味的進(jìn)行文字說明,也不是夸張的色澤艷麗。
  3. 字體選用應(yīng)該注意突出重點(diǎn)。文字說明的時(shí)候也有講究,對(duì)于重點(diǎn)的內(nèi)容,就應(yīng)該加以特別說明,字體應(yīng)該適當(dāng)加粗或者換種顏色。
  4. 色彩搭配應(yīng)該柔和。在進(jìn)行界面美化設(shè)計(jì)方面,色彩搭配也是一個(gè)很重要的環(huán)節(jié)。界面應(yīng)該具有自己的主色調(diào),而這個(gè)主色調(diào)最好采用暖色,這樣可以給人一種柔和親切的感覺。另外,界面顏色不宜太多。與網(wǎng)站所宣傳的內(nèi)容相符合、有自己的特色就好。

3.3系統(tǒng)功能結(jié)構(gòu)圖

塞北村鎮(zhèn)旅游網(wǎng)站是基于B/S體系結(jié)構(gòu)的旅游網(wǎng)站。通過全方位綜合分析,該系統(tǒng)功能設(shè)計(jì)相對(duì)比較全面,能夠滿足大部分用戶的需求。但是,做到滿足每一個(gè)客戶要求也是不可能的,只能是爭(zhēng)取盡可能完善網(wǎng)站功能,到達(dá)更好的效果。塞北村鎮(zhèn)旅游網(wǎng)站主要是通過各功能模塊的介紹,對(duì)塞北村鎮(zhèn)旅游進(jìn)行宣傳,包括首頁,塞北人文,塞北故事等部分。具體前后臺(tái)各部分實(shí)現(xiàn)如圖3-1網(wǎng)站前臺(tái)結(jié)構(gòu)、圖3-2網(wǎng)站后臺(tái)結(jié)構(gòu)所示:

3-1 網(wǎng)站前臺(tái)結(jié)構(gòu)圖

3-2 網(wǎng)站后臺(tái)結(jié)構(gòu)圖

3.4系統(tǒng)設(shè)計(jì)目標(biāo)

用戶特點(diǎn)、系統(tǒng)屬性特點(diǎn)和實(shí)際需求是系統(tǒng)目標(biāo)重要的考慮因素,該網(wǎng)絡(luò)管理系統(tǒng)應(yīng)該盡量滿足操作靈活,界面友好,使用方便等設(shè)計(jì)要求。本網(wǎng)站應(yīng)實(shí)現(xiàn)下面提到的幾個(gè)任務(wù)目標(biāo):

1.人機(jī)交互。用戶可以方便快速的獲取所需要的信息,同時(shí)系統(tǒng)必須可以給予客戶及時(shí)的應(yīng)答。界面設(shè)計(jì)靈活友好,數(shù)據(jù)存取安全。

3.對(duì)塞北村鎮(zhèn)旅游網(wǎng)站的質(zhì)量進(jìn)行評(píng)估,達(dá)到預(yù)期效果,各功能完善。

4.實(shí)現(xiàn)以上所述各部分模塊的功能操作。

5.設(shè)置數(shù)據(jù)檢查,盡量避免數(shù)據(jù)的冗雜和出錯(cuò)。

3.5系統(tǒng)實(shí)現(xiàn)的軟硬件平臺(tái)

(1)硬件系統(tǒng):硬件平臺(tái)實(shí)際上就是支撐系統(tǒng)進(jìn)行開發(fā)運(yùn)行的物理設(shè)備,具有計(jì)算,輸入輸出、存儲(chǔ)等功能,即計(jì)算機(jī)或PC機(jī)。本網(wǎng)站由Windows操作系統(tǒng)作為硬件支撐平臺(tái)得以實(shí)現(xiàn)。

(2)軟件服務(wù):Myeclipse、tomcat、SQL.

4 數(shù)據(jù)庫(kù)設(shè)計(jì)

4.1數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)

數(shù)據(jù)庫(kù)是每一個(gè)系統(tǒng)所必需具備的。數(shù)據(jù)庫(kù)的主要用途是實(shí)現(xiàn)對(duì)各種資源數(shù)據(jù)的存儲(chǔ),提供給該網(wǎng)站多種服務(wù)。通俗來講,數(shù)據(jù)庫(kù)其實(shí)就是一組具有相互關(guān)聯(lián)的信息資源的有序集合,這些信息以一定的方式存放在一起,供系統(tǒng)使用。而對(duì)于程序來說,其與數(shù)據(jù)庫(kù)又保持高度的獨(dú)立性。

  1. 客戶資料實(shí)體:如圖4-1用戶信息實(shí)體屬性圖所示

圖 4-1 用戶信息實(shí)體屬性圖

  1. 景點(diǎn)資料實(shí)體:如圖4-2景點(diǎn)實(shí)體屬性圖所示
圖 4-2景點(diǎn)實(shí)體屬性圖

3)評(píng)價(jià)實(shí)體屬性圖:如圖4-3評(píng)論實(shí)體屬性圖所示

圖 4-3評(píng)論實(shí)體屬性圖

4)站內(nèi)信息實(shí)體屬性圖:如圖4-4新聞信息實(shí)體屬性圖所示

圖 4-4新聞信息實(shí)體屬性圖

5)留言板實(shí)體屬性:如圖4-5留言板實(shí)體屬性圖所示

圖 4-5 留言板實(shí)體屬性圖

6)數(shù)據(jù)庫(kù)E-R圖:如圖4-6 E-R圖所示

圖 4-6 E-R圖

4.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)

數(shù)據(jù)庫(kù)其實(shí)可以理解為一個(gè)倉(cāng)庫(kù),而這個(gè)倉(cāng)庫(kù)不像一般的倉(cāng)庫(kù)存放物體,這個(gè)倉(cāng)庫(kù)是用來存儲(chǔ)數(shù)據(jù)信息的。而這些數(shù)據(jù)并不是雜亂無章的進(jìn)行存儲(chǔ),它們是按照一定的結(jié)構(gòu)、組織方式、方法規(guī)定將這些數(shù)據(jù)以最少的冗余度最好的方式存儲(chǔ)在一起的數(shù)據(jù)的集合。數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)就是根據(jù)E-R圖轉(zhuǎn)換而來的模型結(jié)構(gòu)。數(shù)據(jù)庫(kù)可以幫助系統(tǒng)整合數(shù)據(jù)信息,可以將數(shù)據(jù)庫(kù)比作人的大腦系統(tǒng),它幫助系統(tǒng)獲取、記憶、識(shí)別信息。一個(gè)沒有數(shù)據(jù)庫(kù)的系統(tǒng)是無法完成特定功能要求的,更不能進(jìn)行后臺(tái)連接應(yīng)用。塞北村鎮(zhèn)旅游網(wǎng)站對(duì)數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)進(jìn)行個(gè)性化設(shè)計(jì),保證數(shù)據(jù)存儲(chǔ)的合理有效性。幫助網(wǎng)站進(jìn)行客戶數(shù)據(jù)信息的記錄,整理從而使得該網(wǎng)站具有實(shí)踐意義。

表4-1allusers是權(quán)限為管理員的信息表,記錄數(shù)據(jù)庫(kù)中所設(shè)定的信息。

表4-1 allusers

表4-2jingdianxinxi是景點(diǎn)的信息表,記錄數(shù)據(jù)庫(kù)中所設(shè)定的景點(diǎn)信息。

表4-2 jingdianxinxi

表4-3liuyanban是用戶所留言的信息表,記錄數(shù)據(jù)庫(kù)中所記錄的留言板信息。

表4-3 liuyanban

表4-4xinwentongzhi是新聞通知的信息表,記錄數(shù)據(jù)庫(kù)中所設(shè)定的新聞信息。

表4-4 xinwentongzhi

表4-5kefang是客房的信息表,記錄數(shù)據(jù)庫(kù)中所設(shè)定的酒店信息。

表4-5 kefang

表4-6yonghuzhuce是注冊(cè)用戶的信息表,記錄數(shù)據(jù)庫(kù)中所記錄的用戶信息。

表4-6 yonghuzhuce

4.3本章小結(jié)

在塞北村鎮(zhèn)旅游網(wǎng)站的設(shè)計(jì)和實(shí)現(xiàn)過程中,對(duì)于后臺(tái)管理的設(shè)計(jì),首先是對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的概念結(jié)構(gòu)進(jìn)行設(shè)計(jì),之后又對(duì)數(shù)據(jù)庫(kù)的邏輯進(jìn)行設(shè)計(jì)。這是因?yàn)橐粋€(gè)適合本系統(tǒng)的數(shù)據(jù)庫(kù)對(duì)于軟件開發(fā)的十分重要的,所以本網(wǎng)站在數(shù)據(jù)庫(kù)設(shè)計(jì)過程中花費(fèi)了很長(zhǎng)的時(shí)間,爭(zhēng)取將數(shù)據(jù)存放在一個(gè)結(jié)構(gòu)清晰,安排合理的數(shù)據(jù)庫(kù)中,這樣就可以有效的存儲(chǔ),滿足用戶要求。

5 系統(tǒng)詳細(xì)設(shè)計(jì)

5.1主界面模塊設(shè)計(jì)

塞北村鎮(zhèn)旅游網(wǎng)站的首頁界面設(shè)計(jì)以簡(jiǎn)單、便捷、清晰為主。色彩搭配柔和,最上邊包含各個(gè)模塊的鏈接,另外還有系統(tǒng)公告、站內(nèi)新聞,村鎮(zhèn)旅游景點(diǎn)圖片,友情鏈接等部分組成。塞北主界面整體結(jié)構(gòu)比較單調(diào)大方,網(wǎng)頁最上邊以不同色彩的字體顯示網(wǎng)站的名稱,并配有網(wǎng)站特征標(biāo)志,而在界面的名稱下邊包括系統(tǒng)公告和用戶登錄、站內(nèi)搜索、友情鏈接。另外,界面上還顯示了站內(nèi)新聞、酒店推薦和系統(tǒng)簡(jiǎn)介。除此之外,界面還配置相應(yīng)的圖片,顯示部分景點(diǎn)風(fēng)景。還有推薦酒店的具體詳細(xì)圖文。系統(tǒng)用戶將光標(biāo)移動(dòng)到對(duì)應(yīng)模塊并進(jìn)行單擊時(shí)候,都會(huì)跳轉(zhuǎn)到相應(yīng)的另一個(gè)網(wǎng)頁。例如,當(dāng)單擊塞北人文時(shí),頁面會(huì)進(jìn)入到對(duì)應(yīng)的塞北人文介紹網(wǎng)頁界面。類似的,單擊塞北故事時(shí),頁面也會(huì)進(jìn)入到塞北故事介紹網(wǎng)頁界面。點(diǎn)擊酒店信息時(shí),界面下端會(huì)出現(xiàn)塞北村鎮(zhèn)旅游網(wǎng)站所有酒店信息供用戶選擇,包括酒店星級(jí),編號(hào),名稱,電話,照片,操作等。而同樣在旅游景點(diǎn)界面中,包括該旅游景點(diǎn)星級(jí),名字,具體方位,簡(jiǎn)介,圖片還有旅游價(jià)格。點(diǎn)擊天氣預(yù)報(bào),出現(xiàn)天氣預(yù)報(bào)界面,將鼠標(biāo)移動(dòng)到指定省或者地方之后會(huì)顯示該地具體天氣預(yù)報(bào),點(diǎn)擊旅游地圖查詢,可以查看各個(gè)地方旅游路線。點(diǎn)擊在線評(píng)價(jià)模塊,用戶就能夠?qū)υ摼W(wǎng)站服務(wù)進(jìn)行評(píng)價(jià)或者給出意見。在用戶申請(qǐng)模塊中,用戶可以根據(jù)自己的實(shí)際情況進(jìn)行基本信息的設(shè)置與提供,等待管理員審核通過之后方能登錄。登錄后,可以對(duì)該網(wǎng)站的各個(gè)功能進(jìn)行管理,進(jìn)行增加刪除修改預(yù)訂等功能。下圖中顯示的是塞北村鎮(zhèn)旅游網(wǎng)站的首頁,點(diǎn)擊各個(gè)板塊之后運(yùn)行效果也如圖5-1首頁效果圖、圖5-2首頁塞北人文、圖5-3首頁酒店信息、圖5-4首頁景點(diǎn)信息、圖5-5自駕游路線、圖5-6首頁天氣預(yù)報(bào)、圖5-7在線留言、圖5-8用戶注冊(cè)、圖5-9首頁后臺(tái)登錄所示:

圖5-1首頁效果圖

圖5-2首頁塞北人文

圖5-3首頁酒店信息

圖5-4首頁景點(diǎn)信息

圖5-5自駕游路線

圖5-6首頁天氣預(yù)報(bào)

圖5-7在線留言

圖5-8用戶注冊(cè)

圖5-9首頁后臺(tái)登錄

5.2用戶注冊(cè)模塊設(shè)計(jì)

申請(qǐng)注冊(cè)流程需要通過每一個(gè)使用該網(wǎng)站的客戶提供個(gè)人詳細(xì)資料完成對(duì)該網(wǎng)站的注冊(cè)。用戶注冊(cè)完成后,經(jīng)過管理員的審核以后方能成功登錄。用戶注冊(cè)成功以后,可以進(jìn)行預(yù)訂管理,個(gè)人信息管理以及旅游路線管理等功能。同時(shí),用戶可以對(duì)該系統(tǒng)的服務(wù)進(jìn)行在線評(píng)論,及時(shí)把意見反饋給管理人員。用戶在注冊(cè)過程中,對(duì)于某些信息可以不用填寫,但是對(duì)于有標(biāo)記*號(hào)的信息必須進(jìn)行填寫,否則的話,系統(tǒng)會(huì)自動(dòng)彈出請(qǐng)輸入用戶名(密碼)(姓名)的對(duì)話框,注冊(cè)失敗。其次,只有填寫正確有效的詳細(xì)信息才能提交成功,等待管理員審核。如圖5-10用戶注冊(cè)界面、圖5-11用戶填寫不成功、圖5-12用戶注冊(cè)成功所示,本文用圖片的方式詳細(xì)展示了用戶申請(qǐng)注冊(cè)和注冊(cè)成功的界面:

圖5-10用戶注冊(cè)界面

圖5-11信息填寫不成功

圖5-12 用戶注冊(cè)成功

5.3旅游景點(diǎn)模塊設(shè)計(jì)

在該模塊部分中,用戶可以在此對(duì)顯示出來的并且是自己感興趣的旅游景點(diǎn)進(jìn)行查看。點(diǎn)擊首頁的旅游景點(diǎn)之后,用戶可以看到該網(wǎng)站上所有旅游景點(diǎn)的具體詳細(xì)信息,在搜索欄的名稱一欄中填寫對(duì)應(yīng)的找尋的名字,就可以顯示符合該名稱或者與該名稱有相同關(guān)鍵字的旅游景點(diǎn)信息。同樣的,在搜索欄中的星級(jí)欄中搜索某級(jí)景點(diǎn),點(diǎn)擊搜索按鈕之后便可將對(duì)應(yīng)的星級(jí)景點(diǎn)信息加以顯示出來。供用戶快速便捷的搜索到自己想要的旅游景點(diǎn)信息。如圖5-13景點(diǎn)信息展示、圖5-14景點(diǎn)名稱查詢、圖5-15旅游景點(diǎn)效果圖所示,可以清楚的看出,該部分風(fēng)景的查詢與顯示。

圖5-13景點(diǎn)信息展示

圖5-14景點(diǎn)名稱查詢

圖5-15旅游景點(diǎn)效果圖

5.4酒店預(yù)定模塊設(shè)計(jì)

塞北村鎮(zhèn)旅游網(wǎng)站根據(jù)用戶的實(shí)際需要,在該網(wǎng)站中加入了酒店預(yù)訂部分。其目的在于為用戶提供一體化的服務(wù),同時(shí)減輕酒店工作人員的工作量,用戶可以自己進(jìn)行房間的選擇與訂購(gòu)。用戶登錄以后,點(diǎn)擊本網(wǎng)站首頁最上邊顯示的酒店信息,就可以出現(xiàn)出本網(wǎng)站酒店的具體信息。點(diǎn)擊出現(xiàn)頁面操作欄的詳細(xì),就可以出現(xiàn)如下圖所示的酒店詳情。最下邊一欄有酒店預(yù)訂,點(diǎn)擊相應(yīng)按鈕后,就可以提供詳細(xì)的預(yù)定所需資料。當(dāng)填寫完基本預(yù)訂信息之后,單擊提交按鈕,就會(huì)出現(xiàn)操作成功的對(duì)話框。點(diǎn)擊確定以后,就可以返回到主界面上,此時(shí),可以登錄個(gè)人后臺(tái)管理,查看自身已經(jīng)預(yù)訂的酒店信息。值得注意的是,酒店預(yù)訂必須是在登錄完成以后,才可以進(jìn)行。如果沒有進(jìn)行客戶登錄,只可以進(jìn)行具體資料查看操作但是卻沒有辦法完成預(yù)訂操作。如圖5-16酒店詳細(xì)信息圖、圖5-17酒店預(yù)訂圖、圖5-18酒店預(yù)訂成功圖、圖5-19酒店預(yù)訂成功列表所示,可以清晰的展現(xiàn)出酒店訂購(gòu)模塊的具體操作和運(yùn)行效果。

圖5-16酒店詳細(xì)信息圖

圖5-17酒店預(yù)訂圖

圖5-18酒店預(yù)訂成功圖

圖5-19酒店預(yù)定成功列表

5.5 后臺(tái)管理設(shè)計(jì)

后臺(tái)管理和數(shù)據(jù)庫(kù)部分相連接,要求只有該登錄名和密碼與數(shù)據(jù)庫(kù)所設(shè)置的用戶一致時(shí),才可以進(jìn)行后臺(tái)登錄操作。只有符合數(shù)據(jù)庫(kù)數(shù)據(jù)的用戶名和密碼才可以登錄。登錄后,可以實(shí)施各種操作。實(shí)現(xiàn)對(duì)網(wǎng)站基本信息的管理。系統(tǒng)功能列表里主要包括:1.賬號(hào)管理,在這里管理員可以修改個(gè)人信息,包括密碼和個(gè)人資料等等。2.用戶注冊(cè)管理部分是對(duì)該網(wǎng)站的申請(qǐng)注冊(cè)的用戶進(jìn)行驗(yàn)證通過,管理員可以對(duì)該網(wǎng)站申請(qǐng)的所有用戶進(jìn)行刪除修改和審核。審核通過以后,用戶方可注冊(cè)成功,成為該網(wǎng)站用戶,實(shí)現(xiàn)以后一系列的操作。管理員也可以對(duì)該注冊(cè)用戶實(shí)施一票否定權(quán),此時(shí)用戶注冊(cè)不成功。用戶還需重新注冊(cè)。3.塞北人文添加模塊主要是對(duì)該網(wǎng)站中塞北人文的管理,管理員可以對(duì)塞北人文進(jìn)行更新修改和刪除。操作完成以后,在主頁面的塞北人文模塊可以相應(yīng)的出現(xiàn)管理員之前修改或者更新過的塞北人文。再者,該模塊還有塞北人文查詢模塊,管理員在對(duì)塞北人文添加更新完畢以后,可以在查詢模塊里找尋對(duì)應(yīng)的修改,完成想要的操作。4.塞北故事管理模塊同樣包含倆部分內(nèi)容,一是塞北故事添加,二是塞北故事查詢。管理員可根據(jù)實(shí)際情況對(duì)塞北故事進(jìn)行更新或者添加刪除。操作完成以后,首頁中的塞北故事模塊就會(huì)顯示相應(yīng)的修改。而塞北故事查詢模塊是對(duì)管理員進(jìn)行以上操作之后進(jìn)行的查詢工作。在這里,管理員可以對(duì)自己剛添加或者已經(jīng)添加的塞北故事進(jìn)行查看,確定是否添加成功。同樣的,管理員對(duì)于自己添加的信息有所不滿或者添加錯(cuò)誤的時(shí)候,也可以進(jìn)行相應(yīng)的改正或者刪除操作。5.塞北景點(diǎn)進(jìn)行的操作包含塞北風(fēng)景信息的添加和塞北風(fēng)景的查詢。同塞北人文和塞北故事模塊一樣,管理員也同樣可以對(duì)景點(diǎn)信息進(jìn)行適當(dāng)?shù)奶砑雍蛯?shí)時(shí)更新。改正過后的景點(diǎn)具體資料同樣可以在首頁的景點(diǎn)信息模塊得以顯示。管理員在景點(diǎn)查詢模塊可以對(duì)自己已經(jīng)添加修改過的景點(diǎn)信息進(jìn)行查看,有錯(cuò)誤的地方還可以修改或者刪除。6.自駕游路線管理主要是對(duì)路線的實(shí)時(shí)更新和查詢。管理員通過路線發(fā)布模塊對(duì)塞北旅游網(wǎng)站進(jìn)行路線的發(fā)布,方便廣大旅客進(jìn)行查找。在前臺(tái)的首頁部分也會(huì)相應(yīng)的進(jìn)行更新顯示。而在旅游路線查詢部分管理員同樣可以進(jìn)行旅游駕車線路的問詢和修改。同以上三個(gè)模塊功能基本相同,此處不做太多敘述。7.酒店信息管理模塊一共涵蓋三部分內(nèi)容。包括信息添加,信息管理操作以及訂購(gòu)操作。在此模塊中,除了和以上所介紹的模塊一樣管理員可以進(jìn)行酒店信息的添加和查詢管理,之后可以在主界面進(jìn)行顯示以外,又增加了一項(xiàng)新的功能,即酒店預(yù)訂管理。所有該網(wǎng)站注冊(cè)用戶的酒店預(yù)訂信息管理員都可以進(jìn)行查看,這樣可以方便幫助管理員安排與用戶要求所相符合的酒店。同時(shí),該酒店預(yù)訂管理還可以進(jìn)行搜索功能。管理員可根據(jù)需求搜索自己想要查詢的酒店預(yù)訂管理。還可以對(duì)已經(jīng)預(yù)訂的酒店信息進(jìn)行添加和撤銷等操作。8.留言板管理較為簡(jiǎn)單。該模塊實(shí)現(xiàn)功能較為單一。管理員有權(quán)限對(duì)客戶的在線評(píng)論進(jìn)行一系列操作,包括刪除和回復(fù)。管理員在查看用戶留言之后,可針對(duì)用戶提出來的問題或者意見進(jìn)行回復(fù)和做出實(shí)時(shí)修改。這樣解決了該網(wǎng)站管理員與廣大客戶之間的溝通交流問題。9.最后包括修改密碼和退出登錄模塊。該項(xiàng)功能也比較簡(jiǎn)單,在上述的敘述中也有提到,在此不重復(fù)說明。后臺(tái)管理模塊具體實(shí)現(xiàn)的功能如圖5-20后臺(tái)管理功能所示:

圖5-20后臺(tái)管理功能

5.5.1后臺(tái)登錄模塊設(shè)計(jì)

后臺(tái)登錄是整個(gè)系統(tǒng)的核心部分,在這里可以對(duì)該網(wǎng)站的信息進(jìn)行基本的管理。登錄頁面設(shè)計(jì)清晰明了,由倆個(gè)文本框、一個(gè)選擇文本框和倆個(gè)按鈕構(gòu)成。文本框內(nèi)需要用戶填寫用戶名和密碼,選擇文本框的權(quán)限是管理員。也就是說,只有管理員才可以登錄,其他普通用戶不可以登錄。用戶在上述文本框內(nèi)填寫管理員用戶名與密碼,若填寫的用戶和密碼與數(shù)據(jù)庫(kù)中管理員的用戶和密碼一致,方可進(jìn)行登錄,跳轉(zhuǎn)到后臺(tái)管理頁面。如果所填寫的用戶和密碼與數(shù)據(jù)庫(kù)內(nèi)容不一致,則無法進(jìn)入跳轉(zhuǎn)頁面,進(jìn)行相應(yīng)的操作,同時(shí)系統(tǒng)還會(huì)顯示錯(cuò)誤信息,清空文本框內(nèi)填寫的信息。用戶如果還需登錄,那么就需要重新填寫信息。后臺(tái)登錄模塊的流程圖如圖5-21用戶登錄模塊流程圖、5-22后臺(tái)登錄界面以及圖5-23后臺(tái)登錄失敗、圖5-24后臺(tái)登錄成功所示,從而進(jìn)行顯示,運(yùn)行效果也如下。

圖5-21 用戶登陸模塊流程圖

圖5-22后臺(tái)登錄界面

圖5-23后臺(tái)登錄失敗

圖5-24后臺(tái)登錄成功

5.5.2旅游景點(diǎn)模塊設(shè)計(jì)

旅游景點(diǎn)介紹和管理是整個(gè)網(wǎng)站的重點(diǎn)設(shè)計(jì)部分。景點(diǎn)信息需要及時(shí)進(jìn)行更新和添加,管理員也可以對(duì)景點(diǎn)資料進(jìn)行查閱。管理員在后臺(tái)對(duì)景點(diǎn)添加模塊對(duì)塞北村鎮(zhèn)網(wǎng)站景點(diǎn)進(jìn)行添加之后,點(diǎn)擊提交按鈕,會(huì)提示添加成功的對(duì)話框,按確定之后重新回到上一級(jí)頁面。添加成功后,前臺(tái)用戶可以實(shí)時(shí)的看到管理員更新過的景點(diǎn)信息,以便進(jìn)行更好的選擇。同樣的,管理員在后臺(tái)對(duì)景點(diǎn)信息進(jìn)行添加之后,還可以在景點(diǎn)信息查詢模塊對(duì)自己所修改過的景點(diǎn)信息進(jìn)行查詢操作,對(duì)應(yīng)不滿意的地方還可以進(jìn)行進(jìn)一步的修改刪除。該模塊最上邊還設(shè)置有搜索框,管理員可以根據(jù)時(shí)間或者星級(jí)或者名稱來查找相關(guān)景點(diǎn)資料信息。圖5-25旅游景點(diǎn)后臺(tái)管理、圖5-26景點(diǎn)添加圖、圖5-27景點(diǎn)添加成功、圖5-28景點(diǎn)信息查詢、圖5-29景點(diǎn)信息前臺(tái)查詢和圖5-30景點(diǎn)信息添加頁面所示,展示了該模塊的運(yùn)行示意圖。

圖5-25旅游景點(diǎn)后臺(tái)管理

圖5-26景點(diǎn)添加圖

圖5-27景點(diǎn)添加成功

圖5-28景點(diǎn)信息查詢

圖5-29景點(diǎn)信息前臺(tái)查詢

圖5-30旅游景點(diǎn)添加頁面

5.5.3線路管理模塊設(shè)計(jì)

路線管理實(shí)際上是為了方便廣大用戶,為其制定合理省時(shí)的路線方案。管理員可以對(duì)自駕游路線進(jìn)行添加和查詢。管理員在后臺(tái)對(duì)旅游路線進(jìn)行發(fā)布和更新,用戶可以在前臺(tái)首頁點(diǎn)擊自駕游路線進(jìn)行路線的查看。而在后臺(tái)自駕游路線查詢中,管理員可以在此進(jìn)行路線的查詢,修改,刪除等操作功能。而在自駕游路線查詢頁面的最上邊設(shè)有路線編號(hào),路線名稱,目的地,交通工具,出行時(shí)間,發(fā)布人等欄目,管理員可以根據(jù)以上提示信息,填入關(guān)鍵字,對(duì)自己已經(jīng)發(fā)布的路線進(jìn)行查找。如圖5-31路線添加界面、圖5-32路線查詢界面所示,展示了路線管理模塊的實(shí)現(xiàn)圖。

圖5-31路線添加界面

圖5-32路線查詢界面

6 系統(tǒng)測(cè)試

6.1 測(cè)試的任務(wù)及目標(biāo)

6.1.1測(cè)試的任務(wù)

軟件測(cè)試的需要完成的任務(wù)有:在軟件產(chǎn)品進(jìn)行生產(chǎn)運(yùn)營(yíng)之前,以最少的時(shí)間成本和人力資源、最大限度的發(fā)現(xiàn)或者找出軟件產(chǎn)品中已經(jīng)存在的或者尚未發(fā)現(xiàn)的不足和漏洞,保證產(chǎn)品能夠正常運(yùn)轉(zhuǎn)并且能夠滿足用戶對(duì)產(chǎn)品的所有要求。同時(shí)可以有效的和系統(tǒng)工作人員互動(dòng),實(shí)現(xiàn)改進(jìn)軟件的最終目標(biāo)。具體主要包括以下幾個(gè)方面:

1.更早的發(fā)現(xiàn)并找出軟件產(chǎn)品中的bug。

2.盡量多的避免軟件缺陷的出現(xiàn)。

3.盡可能全面的評(píng)價(jià)軟件產(chǎn)品的各項(xiàng)性能指標(biāo),保證軟件產(chǎn)品的功能和容錯(cuò)性。

4.時(shí)刻關(guān)注需求的變化。

5.功能檢查:檢查每個(gè)部分功能能否運(yùn)作,是否有漏洞或者運(yùn)行不出來的情況。

6.性能檢查:檢查性能是否合格。

7.初始化、終止檢查:檢查程序是否能夠正常開始和正常結(jié)束終止。

6.1.2測(cè)試的重要性及目標(biāo)

軟件測(cè)試是軟件開發(fā)過程中的一個(gè)重要部分環(huán)節(jié),可以說在軟件產(chǎn)品開發(fā)周期中起著舉足輕重的地位。而在以前的軟件開發(fā)中,并不重視測(cè)試部分。他們經(jīng)常只是存在于系統(tǒng)的運(yùn)行和維護(hù)階段之前進(jìn)行,其他部分并不涉及。所以,這就成了所發(fā)開的軟件在完成之前進(jìn)入投入使用的質(zhì)量標(biāo)準(zhǔn)是否合格進(jìn)行的唯一測(cè)試和保障。這就導(dǎo)致后期維護(hù)成本增加,系統(tǒng)漏洞出現(xiàn)頻率增高。在最近幾年來來,開發(fā)維護(hù)人員逐漸意識(shí)到系統(tǒng)測(cè)試的重要性,所以提出,應(yīng)該在系統(tǒng)生命周期的每一個(gè)階段都應(yīng)該包含測(cè)試,這樣就可以驗(yàn)證系統(tǒng)能否達(dá)到用戶所期望的效果和需要,能否高效的實(shí)現(xiàn)了用戶要求的全部功能,是否存在運(yùn)行不出來或者運(yùn)行出錯(cuò)的問題。若少了這些環(huán)節(jié),不提早進(jìn)行各個(gè)時(shí)間段的具體測(cè)試任務(wù)和細(xì)節(jié),后期開發(fā)維護(hù)成本將會(huì)大幅度增加,而且問題的蔓延往往使得產(chǎn)品錯(cuò)上加錯(cuò),越滾越大,最后甚至?xí)?dǎo)致軟件開發(fā)難以繼續(xù)進(jìn)行進(jìn)而宣告失敗。

理論上具有很大的可行性,但是事實(shí)上,對(duì)于測(cè)試系統(tǒng)來講,不論進(jìn)行如何精細(xì)的測(cè)試方案、技術(shù)和方法,系統(tǒng)不可避免的還會(huì)出現(xiàn)錯(cuò)誤。然而,創(chuàng)新合理的方法,周密的方案,新的語言,能夠大大減少問題的發(fā)生的概率,絕對(duì)的避免問題的發(fā)生幾乎是不能夠完成的。測(cè)試人員應(yīng)該通過測(cè)試不斷修改完善系統(tǒng)中存在的問題。進(jìn)行系統(tǒng)測(cè)試工作應(yīng)該至少達(dá)到整個(gè)軟件產(chǎn)品發(fā)開時(shí)間和任務(wù)的40%以上。因?yàn)闇y(cè)試占據(jù)重要地位,關(guān)乎軟件開發(fā)成功與否,更關(guān)乎成本的投入數(shù)量。統(tǒng)計(jì)表明,典型的系統(tǒng)項(xiàng)目投入的總資金中,測(cè)試部分大概就要花百分之30到50的資金總額。如果沒有合適的測(cè)試部分,也可以說在測(cè)試部分沒有投入太多工作量就直接交付成品,可能就會(huì)導(dǎo)致二次開發(fā)、三次開發(fā)甚至多次開發(fā)的嚴(yán)重后果。最后不僅開發(fā)的系統(tǒng)不合格,資金投入高,嚴(yán)重時(shí)還會(huì)使得軟件被棄用。這樣說來,測(cè)試工作必須得花費(fèi)時(shí)間仔細(xì)完成。正因?yàn)橄到y(tǒng)測(cè)試具有如此重要性,所以在運(yùn)營(yíng)之前進(jìn)行測(cè)試是必不可少的,同樣,測(cè)試可以到達(dá)的目標(biāo)也是十分重要的。軟件測(cè)試的目標(biāo)主要是力求避免或者減少bug和漏洞的發(fā)生,以求可以確保系統(tǒng)的正常運(yùn)行。

6.2測(cè)試方案

在測(cè)試的過程中,方案的選取是十分重要的。根據(jù)系統(tǒng)的不同,制定不同的測(cè)試方案,既能到達(dá)預(yù)測(cè)效果,又能節(jié)省成本,符合系統(tǒng)制定規(guī)則。而測(cè)試方案的設(shè)計(jì)是否成功,不僅僅只是資金和時(shí)間上的節(jié)省,更重要的是能否找到系統(tǒng)已經(jīng)存在或者潛在的bug。能夠找出多種證明系統(tǒng)錯(cuò)誤或者漏洞的數(shù)據(jù),這才是成功的測(cè)試數(shù)據(jù)和方案。黑盒測(cè)試以及白盒測(cè)試是經(jīng)常使用到的兩種固有方案。

黑盒測(cè)試也稱為功能測(cè)試,主要針對(duì)接口之間。黑盒測(cè)試不在乎內(nèi)部結(jié)構(gòu)如何,它只關(guān)心程序能否實(shí)現(xiàn)已經(jīng)規(guī)定好的各種功能,正確輸入輸出即能否正常接收數(shù)據(jù)然后獲得預(yù)期效果一樣的輸出結(jié)果,同時(shí)保持程序結(jié)構(gòu)的無差錯(cuò)性。黑盒測(cè)試的優(yōu)點(diǎn)在于簡(jiǎn)單,便捷的獲得想要的結(jié)果,找出系統(tǒng)錯(cuò)誤,而不必?fù)?dān)心程序內(nèi)部如何運(yùn)行,這就大大簡(jiǎn)化了測(cè)試人員的工作量又可以達(dá)到自己想要的結(jié)果。常用的黑盒測(cè)試方法主要包括:等價(jià)法、邊界值分析法、因果圖法、猜錯(cuò)法等等。

白盒測(cè)試又稱為邏輯測(cè)試。該方法與黑盒測(cè)試方法正好相反,該方法關(guān)注的是程序內(nèi)部邏輯的實(shí)現(xiàn),而不在乎外部接口。白盒測(cè)試方法將系統(tǒng)看成一個(gè)透明的盒子,它關(guān)心的是程序內(nèi)部實(shí)現(xiàn)邏輯和結(jié)構(gòu),對(duì)系統(tǒng)的邏輯路徑及過程一一進(jìn)行測(cè)試。檢驗(yàn)系統(tǒng)是否與預(yù)期效果是否相符。白盒測(cè)試需要設(shè)計(jì)多種測(cè)試用例,對(duì)已有代碼進(jìn)行全方面的檢測(cè),保證代碼的正確性。白盒測(cè)試的倆種方法有:邏輯覆蓋法和路徑覆蓋法。該測(cè)試依照程序內(nèi)部的邏輯結(jié)構(gòu)順序進(jìn)行程序的檢驗(yàn),檢驗(yàn)其程序中的正確性。

本系統(tǒng)開發(fā)過程進(jìn)行的測(cè)試步驟如下:

6.2.1模塊測(cè)試

模塊測(cè)試在測(cè)試的過程中往往是一個(gè)常常選用的測(cè)試方案。其的要完成的任務(wù)是將系統(tǒng)一個(gè)部分一個(gè)部分的分開進(jìn)行檢驗(yàn),保證每一個(gè)單元都能正常運(yùn)行。在模塊測(cè)試執(zhí)行中出現(xiàn)的問題一般都是詳細(xì)設(shè)計(jì)或者編碼過程中出現(xiàn)的問題。簡(jiǎn)單通俗來說,單元測(cè)試其實(shí)就是根據(jù)已知條件和具體情況來檢驗(yàn)?zāi)彻δ芎瘮?shù)執(zhí)行過程和結(jié)果是否可以達(dá)到要求。模塊測(cè)試是由程序員自己完成,就像某程序員定義了一個(gè)函數(shù),需要查看一下該函數(shù)是否能夠正確執(zhí)行,程序員可以自己設(shè)計(jì)一些代碼段來對(duì)該函數(shù)進(jìn)行驗(yàn)證。對(duì)軟件產(chǎn)品而言,就可以及時(shí)發(fā)現(xiàn)不足加以改善。對(duì)于程序員而言,單元測(cè)試的良好習(xí)慣可以使得程序出錯(cuò)性低,產(chǎn)品質(zhì)量好。

6.2.2集成測(cè)試

集成測(cè)試以單元測(cè)試為基礎(chǔ),在單元測(cè)試的前提條件下,將多個(gè)單元之間進(jìn)行聯(lián)合測(cè)試,發(fā)現(xiàn)這些單元之間的接口可能存在的問題。因?yàn)槿绻粋€(gè)單元模塊可以正常運(yùn)行,但是將他們聯(lián)合起來并不一定能夠完成任務(wù),達(dá)到預(yù)期效果。程序在某些局部反映不出來的問題,有可能在全局上就顯示出來了。集成測(cè)試是一個(gè)過程,需要精細(xì)周密的設(shè)計(jì),他的任務(wù)是檢查各個(gè)不同模塊相互間是否有連接錯(cuò)誤問題。

在集成測(cè)試的多種測(cè)試方法中,漸增式集成測(cè)試是比較占有優(yōu)勢(shì)的,所以在本網(wǎng)站測(cè)試環(huán)節(jié)中,使用的是該聯(lián)合測(cè)試方法。但是單一的測(cè)試方式是難以將測(cè)試方法做到完美,應(yīng)該使用多種混合的方式,這樣可以更多更早的發(fā)現(xiàn)軟件產(chǎn)品中存在的問題。所以,在軟件產(chǎn)品的上部采用自上而下,相反的,在軟件的中下部采用自下而上的測(cè)試方法。多種方式可以相互結(jié)合,共同完成測(cè)試工作。

6.2.3驗(yàn)收測(cè)試

驗(yàn)收測(cè)試是最后一個(gè)操作,也稱為交付測(cè)試。軟件產(chǎn)品在完成以上模塊,集成,系統(tǒng)測(cè)試之后,下一步就需要進(jìn)行最后的檢驗(yàn)。驗(yàn)收測(cè)試可以保障軟件開發(fā)各項(xiàng)功能全部就緒,讓客戶最后決定其所需的所有任務(wù)。而驗(yàn)收測(cè)試所用的最多的方式是黑盒法,其常用的方法有三種:正式驗(yàn)收、Alpha測(cè)試和Beta測(cè)試。具體方式的采用往往根據(jù)各種標(biāo)準(zhǔn)和應(yīng)用領(lǐng)域。

6.2.4平行運(yùn)行

所謂平行運(yùn)行其實(shí)就是將不同系統(tǒng)之間同時(shí)運(yùn)行,比較不同系統(tǒng)之間的運(yùn)行參數(shù)和結(jié)果,這樣可以互為參考,同時(shí)便于新舊倆個(gè)系統(tǒng)的處理結(jié)果進(jìn)行比較。這樣做的目的有:

1.系統(tǒng)能夠在已有的準(zhǔn)確的生產(chǎn)環(huán)境中運(yùn)行試驗(yàn),減少系統(tǒng)風(fēng)險(xiǎn);

2.能夠?qū)Ω鞣N已經(jīng)交付的指南、說明、手冊(cè)等的文檔進(jìn)行驗(yàn)證;

3.對(duì)于用戶來說,對(duì)新系統(tǒng)的熟悉也比較方便;

4.可以準(zhǔn)確檢驗(yàn)軟件成品的各種功能和性能指標(biāo),對(duì)新系統(tǒng)進(jìn)行合理的分析。

6.3系統(tǒng)評(píng)價(jià)

系統(tǒng)評(píng)價(jià)是指系統(tǒng)測(cè)試交付成功以后,運(yùn)行一定時(shí)間內(nèi),對(duì)該系統(tǒng)進(jìn)行客觀的評(píng)價(jià),包括功能性能,技術(shù),反應(yīng)速度等各個(gè)方面的評(píng)價(jià)。根據(jù)該網(wǎng)站的評(píng)價(jià)如下:

  1. 系統(tǒng)功能評(píng)價(jià)
    該網(wǎng)站的所有需求基本上得以實(shí)現(xiàn),網(wǎng)站運(yùn)行良好,得到了用戶和管理者的基本需求。
  2. 系統(tǒng)技術(shù)評(píng)價(jià)
    本網(wǎng)站采用的技術(shù)合理,容錯(cuò)性強(qiáng),運(yùn)行穩(wěn)定可靠,大大提高了網(wǎng)站效率,同時(shí)技術(shù)簡(jiǎn)單易懂,安全實(shí)用。
  3. 系統(tǒng)經(jīng)濟(jì)評(píng)價(jià)
在指定時(shí)間內(nèi),達(dá)到系統(tǒng)目標(biāo)要求,且經(jīng)濟(jì)成本低廉,實(shí)用。各項(xiàng)性能指標(biāo)都合格。

6.4本章小結(jié)

本章主要介紹了系統(tǒng)測(cè)試模塊所采用的幾種測(cè)試方案。每一個(gè)系統(tǒng)在發(fā)開階段都應(yīng)該注意系統(tǒng)測(cè)試部分,因?yàn)闇y(cè)試可以及時(shí)發(fā)現(xiàn)問題,找出系統(tǒng)不足的地方,進(jìn)行全面的修改,這樣就可以減少后期維護(hù)成本,開發(fā)出來的產(chǎn)品性能才會(huì)比較高。

結(jié)論

在塞北村鎮(zhèn)旅游網(wǎng)站的設(shè)計(jì)和實(shí)現(xiàn)過程中,最開始通過網(wǎng)上問卷調(diào)查等方式對(duì)該網(wǎng)站進(jìn)行了系統(tǒng)的需求分析,向廣大互聯(lián)網(wǎng)用戶了解到旅游網(wǎng)站一般應(yīng)該具備哪些基本的功能與特征。然后下一步對(duì)網(wǎng)站從技術(shù)上,經(jīng)濟(jì)上,操作上進(jìn)行可行性分析,分別對(duì)這三方面可行性進(jìn)行分析確認(rèn)??尚行苑治鐾ㄟ^之后又進(jìn)入詳細(xì)設(shè)計(jì)階段,這個(gè)階段主要是對(duì)數(shù)據(jù)庫(kù)進(jìn)行選擇和設(shè)計(jì)。這一過程非常重要,是整個(gè)詳細(xì)設(shè)計(jì)階段的最重要部分。只有數(shù)據(jù)庫(kù)設(shè)計(jì)合理有效,才能為下面一系列模塊實(shí)現(xiàn)工作打下堅(jiān)實(shí)的基礎(chǔ),為具體工作做好準(zhǔn)備。最后是劃分各個(gè)部分所要實(shí)現(xiàn)的內(nèi)容,然后著手每個(gè)部分代碼的實(shí)現(xiàn)。

該網(wǎng)站開發(fā)采用MyEclipse作為開發(fā)工具,運(yùn)用JSP,JAVA,HTML等技術(shù),SQL2005數(shù)據(jù)庫(kù)這樣一個(gè)簡(jiǎn)單的小型數(shù)據(jù)庫(kù)。整個(gè)界面便清晰便捷,客戶使用起來簡(jiǎn)單方便。在網(wǎng)站的開發(fā)過程中,特別注意強(qiáng)調(diào)的是,開發(fā)過程采用的是邊開發(fā)邊測(cè)試。這樣就可以及時(shí)發(fā)現(xiàn)問題,及時(shí)改正。不然會(huì)因?yàn)榍捌诠ぷ鞯氖≡斐珊罄m(xù)工作額度難以推行,找不到出錯(cuò)位置。首先進(jìn)行單元測(cè)試,確保各個(gè)模塊正確無誤之后再進(jìn)行下一模塊代碼的編寫與實(shí)現(xiàn),最后進(jìn)行個(gè)模塊接口的實(shí)現(xiàn),完成模塊之間的整合,最后進(jìn)行一次最終的測(cè)試。考慮到該網(wǎng)站在未來投入使用過程中不可避免的出現(xiàn)各種錯(cuò)誤操作,還需要對(duì)系統(tǒng)可能出現(xiàn)的各種異常都進(jìn)行提示框處理。完成具體模塊功能以及整合后,還需要修修改改,不斷美化界面,達(dá)到完美。最終實(shí)現(xiàn)了集性能穩(wěn)定及頁面美觀為一體的一個(gè)完整的旅游網(wǎng)站。

塞北村鎮(zhèn)旅游網(wǎng)站基本可以滿足塞北村鎮(zhèn)對(duì)其當(dāng)?shù)鼐包c(diǎn)宣傳的需要。基本上達(dá)到了預(yù)期效果。但是,人無完人,筆者在網(wǎng)站設(shè)計(jì)過程中,不可避免的還會(huì)有一些不完善的現(xiàn)象,比如說,功能實(shí)現(xiàn)不夠細(xì)致還需進(jìn)一步深思改正,界面設(shè)計(jì)不太美觀還需要進(jìn)一步美化等等。另外,在數(shù)據(jù)存儲(chǔ)上可能也存在一定缺陷,數(shù)據(jù)表的設(shè)計(jì)也存在不足。一些功能的實(shí)現(xiàn)沒有找到最簡(jiǎn)便的方法,代碼太長(zhǎng)導(dǎo)致網(wǎng)站系統(tǒng)反應(yīng)時(shí)間太長(zhǎng)等等。根據(jù)系統(tǒng)的不足,繼續(xù)改進(jìn)和完善本系統(tǒng)。雖然存在上述問題,但是整體而言,本網(wǎng)站有許多地方還是做的非常不錯(cuò),希望可以在以后的學(xué)習(xí)工作中不斷完善與改正。

附錄

該代碼實(shí)現(xiàn)了塞北村鎮(zhèn)旅游網(wǎng)站的主界面設(shè)計(jì),現(xiàn)附錄關(guān)鍵程序代碼如下:

</style>

</head>

<script language="javascript">

function check()

{

if(document.form1.yonghuming.value==""){alert("請(qǐng)輸入用戶名");document.form1.yonghuming.focus();return false;}if(document.form1.mima.value=="")

{alert("請(qǐng)輸入密碼");document.form1.mima.focus();return false;}if(document.form1.xingming.value=="")

{alert("請(qǐng)輸入姓名");document.form1.xingming.focus();return false;}

}

functiongow()

{

document.location.href="yonghuzhuce_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;

}

</script>

對(duì)于景點(diǎn)信息界面,可以進(jìn)行景點(diǎn)的選擇與查看功能,管理員還可以在后臺(tái)進(jìn)行對(duì)該模塊操作,實(shí)現(xiàn)對(duì)景點(diǎn)信息的添加刪除和修改。實(shí)現(xiàn)該模塊的核心代碼如下所示:

<link rel="stylesheet" type="text/css" href="<%=path %>/css/base.css" />

curpage=1;

}

if (curpage==0)

{

curpage=1;

}

if(curpage>zys)

{

curpage=zys;

}

//out.print(curpage);




String sql="select top "+page_record+" * from shangpinxinxi where id not in (select top "+((curpage-1)*page_record)+" id from shangpinxinxi order by id desc) ";

if(sc.equals(""))

{}

else

{

sql=sql+" and "+ltt+" like '%"+qd+"%'";

}

sql=sql+" order by id desc";

ResultSetRS_result=connDbBean.executeQuery(sql);

while(RS_result.next()){

i=i+1;

j=j+1;

id=RS_result.getString("id");

bianhao=RS_result.getString("bianhao");

mingcheng=RS_result.getString("mingcheng");

tupian=RS_result.getString("tupian"); %>

實(shí)現(xiàn)酒店預(yù)訂的核心代碼如下所示:

<%

String jiudianmingcheng=request.getParameter("jiudianmingcheng");String kefangbianhao=request.getParameter("kefangbianhao");String jiage=request.getParameter("jiage");String yudingshijian=request.getParameter("yudingshijian");String yudingtianshu=request.getParameter("yudingtianshu");String nindexingming=request.getParameter("nindexingming");String nindedianhua=request.getParameter("nindedianhua");String nindeshenfenzheng=request.getParameter("nindeshenfenzheng");String beizhu=request.getParameter("beizhu");String yonghuming=request.getParameter("yonghuming");

String id=request.getParameter("id");

String sql="update jiudianyuding set jiudianmingcheng='"+jiudianmingcheng+"',kefangbianhao='"+kefangbianhao+"',jiage='"+jiage+"',yudingshijian='"+yudingshijian+"',yudingtianshu='"+yudingtianshu+"',nindexingming='"+nindexingming+"',nindedianhua='"+nindedianhua+"',nindeshenfenzheng='"+nindeshenfenzheng+"',beizhu='"+beizhu+"',yonghuming='"+yonghuming+"' where id= "+id;

connDbBean.executeUpdate(sql);

out.print("<script>alert('修改成功!!');

location.href='jiudianyuding_updt.jsp?id="+id+"';</script>"); %>

在后臺(tái)登錄模塊中,權(quán)限為管理員的用戶方可登錄成功,進(jìn)行一系列的后臺(tái)管理操作,核心程序代碼如下:

String uid=request.getParameter("username");

String pwd=request.getParameter("pwd");

String cx=new String(request.getParameter("cx").getBytes("8859_1"));

String sql="";

if(cx.equals("員工"))

{

sql="select * from [yuangongxinxi] where yonghuming='"+uid+"' and mima='"+pwd+"'";

}

else

{

sql="select * from [allusers] where username='"+uid+"' and pwd='"+pwd+"'";

}

ResultSetRS_result=connDbBean.executeQuery(sql);

if(!RS_result.next())

{

out.print("<script>alert('你輸入的用戶不存在或密碼錯(cuò)誤,請(qǐng)重新登錄!');

window.history.go(-1);</script>");

}

else{

session.setAttribute("username",uid);

if(cx.equals("員工"))

{

session.setAttribute("cx","員工");

}

else

{

session.setAttribute("cx",RS_result.getString("cx"));

}

response.sendRedirect("main.jsp");

}

RS_result.close();

%>

景點(diǎn)后臺(tái)管理可以對(duì)景點(diǎn)信息進(jìn)行添加和查詢修改操作,實(shí)現(xiàn)其關(guān)鍵程序代碼如下所示:

String sql="insert into xinwentongzhi(biaoti,leibie,neirong,tianjiaren,shouyetupian,dianjilv) values('"+biaoti+"','"+leibie+"','"+neirong+"','"+tianjiaren+"','"+shouyetupian+"','"+dianjilv+"') ";

connDbBean.executeUpdate(sql);

out.print("<script>alert('添加成功!!')

;location.href='xinwentongzhi_add.jsp?lb="+leibie+"';</script>");

在實(shí)現(xiàn)自駕游路線管理模塊中,管理員可以對(duì)路線進(jìn)行實(shí)時(shí)修改和更新,以方便廣大用戶進(jìn)行路線的選擇。實(shí)現(xiàn)該功能的核心代碼如下:

<%

intcurpage=1;//當(dāng)前頁

intpage_record=10;//每頁顯示的記錄數(shù)

intzgs=0;

intzys=0;

//用下面的方法(sql查詢完成,速度快)

String hsgnpage=request.getParameter("page");

String fysql="select count(id) as ss from shangpinxinxi";

ResultSetRS_resultfy=connDbBean.executeQuery(fysql);

while(RS_resultfy.next()){

zgs=Integer.parseInt(RS_resultfy.getString("ss"));

zys=zgs/page_record+1;

}

if (hsgnpage!=null)

{

curpage=Integer.parseInt(request.getParameter("page"));//獲取傳遞的值,需要顯示的頁

}

else

{

curpage=1;

}

致謝

四年如白駒過隙,忽然而已。一天揭過一天,畢業(yè)的日子還是到了,港灣再寧?kù)o,也終究是有放纜遠(yuǎn)行的一天。四年的時(shí)光猶如潮水般洶涌退去,在洶涌的潮音中一切變得似遠(yuǎn)猶近,似是而非。在似是而非的朦朧交錯(cuò)中,時(shí)光又似乎清晰了。

校園里人已散去大半,僅余下畢業(yè)的觥籌交錯(cuò)的歌聲,從湖的此岸蕩去彼岸。最愛的便是這汪湖,每一步都由無數(shù)個(gè)散落在湖光里的記憶拼湊,亦惆悵,亦浪漫。尤記得射雕中程瑛與陸無雙在與楊過分別時(shí),程瑛曾說:“三妹,你瞧這些白云聚了又散,散了又聚,人生離合,亦復(fù)如斯。你又何必?zé)?”她話雖如此說,卻也忍不住流下淚來。當(dāng)初讀到此處,雖心中傷感,但終究不明白個(gè)中酸楚,而如今自己卻身置其中,那難以言明的無奈也只有自身可體會(huì)吧。

來到理工,而今細(xì)細(xì)思量,實(shí)在是件幸運(yùn)的事。這四年的時(shí)光,說短不短,說長(zhǎng)也未必長(zhǎng),但卻實(shí)實(shí)在在改變了我的人生,讓我的人生方向清晰了起來。剛過去的便是備戰(zhàn)考研的日子,那再次把未來抓在手中的感覺實(shí)在再美妙不過了。一年來的披星戴月,每每堅(jiān)持不住就躲在無人處猛抽自己耳光,最難熬的是冬日里早上5點(diǎn)半獨(dú)自頂寒風(fēng)去圖書館,大喊著讓自己堅(jiān)持。那段日子真正讓我切身體會(huì)到付出真的是會(huì)有收獲的。最充實(shí)的體會(huì)到自己我價(jià)值的日子是大二的時(shí)候,奔走于社團(tuán)活動(dòng)之間,忙碌疲憊中亦不乏歡聲笑語,回想起一起并肩作戰(zhàn)的朋友們,實(shí)感欣慰。

如今想到的只有感謝,感謝四年來父母對(duì)我求學(xué)的支持,感謝四年來諸位師長(zhǎng)的教誨,感謝朋友們的幫助,感謝賈冠一,魏強(qiáng)等同學(xué)的建議,特別需要感謝的是我的論文指導(dǎo)老師,老師們的耐心教導(dǎo)和不厭其煩的幫助,讓我從最初的迷茫一無所知,到現(xiàn)在的僅僅有條,胸有成竹。沒有老師們的幫助,我是無法獨(dú)自完成畢業(yè)論文的。時(shí)間過得好快,一眨眼已經(jīng)過去了幾個(gè)月的時(shí)間。從做畢業(yè)設(shè)計(jì)到現(xiàn)在,我學(xué)到了很多,也了解到自己身上的一些不足的地方,同時(shí)也發(fā)現(xiàn)自己在四年的學(xué)習(xí)中所短缺的知識(shí),在接下來的日子里,我會(huì)繼續(xù)不恥下問,不屈不撓的學(xué)習(xí)專業(yè)課東西,在實(shí)踐中發(fā)現(xiàn)不足。努力成為一個(gè)更好的人。

參考文獻(xiàn)

[1]張文琳.基于JSP的旅游網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn).經(jīng)營(yíng)管理者.2014

[2]劉昱.旅游網(wǎng)站系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).電子科技大.2011.11

[3]王青.旅游網(wǎng)站的優(yōu)化設(shè)計(jì)研究.杭州印刷學(xué)院 2011.07

[4]王國(guó)輝.Java Web 開發(fā)實(shí)戰(zhàn)寶典[M].清華大學(xué)出版社.2010.1.

[5]王海心.大學(xué)生互助旅游網(wǎng)站設(shè)計(jì)與運(yùn)營(yíng)研究.龍江科技信息.2016

[6]張紅.利用Java Servlet實(shí)現(xiàn)在Web服務(wù)器平臺(tái)上的開發(fā).[J].桂林電子科技大學(xué)學(xué)報(bào).2009.29(3).

[7]黃勇. 基于JSP的電子商務(wù)系統(tǒng)中關(guān)鍵技術(shù)研究[J], 商場(chǎng)現(xiàn)代化, 2008.1(528): 133~134.

[8]Marty Hall, Larry Brown著. Servlet與JSP核心編程(第2版)[M]:杭州.清華大學(xué)出版社.

[9]Christine Canning Esposito.The business of restoring a car’s beauty.[J].Coatings World .2002.7(9).

[10] David Flanagan. JavaScript: The Definitive Guide[M]. O'Reilly Media, Inc.2006.

英文原文

THE TECHNIQUE DEVELOPMENT HISTORY OF JSP

The Java Server Pages( JSP) is a kind of according to web of the script plait distance technique, similar carries the script language of Java in the server of the Netscape company of server- side JavaScript( SSJS) and the Active Server Pages(ASP) of the Microsoft. JSP compares the SSJS and ASP to have better can expand sex, and it is no more exclusive than any factory or some one particular server of Web. Though the norm of JSP is to be draw up by the Sun company of, any factory can carry out the JSP on own system.

The After Sun release the JSP( the Java Server Pages) formally, the this kind of new Web application development technique very quickly caused the people's concern. JSP provided a special development environment for the Web application that establishes the high dynamic state. According to the Sun parlance, the JSP can adapt to include the Apache WebServer, IIS4.0 on the market at inside of 85% server product.

This chapter will introduce the related knowledge of JSP and Databases, and JavaBean related contents, is all certainly rougher introduction among them basic contents, say perhaps to is a Guide only, if the reader needs the more detailed information, pleasing the book of consult the homologous JSP.

1.1 GENERALIZE

The JSP(Java Server Pages) is from the company of Sun Microsystems initiate, the many companies the participate to the build up the together of the a kind the of dynamic the state web the page technique standard, the it have the it in the construction the of the dynamic state the web page the strong but the do not the especially of the function. JSP and the technique of ASP of the Microsoft is very alike. Both all provide the ability that mixes with a certain procedure code and is explain by the language engine to carry out the procedure code in the code of HTML. Underneath we are simple of carry on the introduction to it.

JSP pages are translated into servlets. So, fundamentally, any task JSP pages can perform could also be accomplished by servlets. However, this underlying equivalence does not mean that servlets and JSP pages are equally appropriate in all scenarios. The issue is not the power of the technology, it is the convenience, productivity, and maintainability of one or the other. After all, anything you can do on a particular computer platform in the Java programming language you could also do in assembly language. But it still matters which you choose.

JSP provides the following benefits over servlets alone:

? It is easier to write and maintain the HTML. Your static code is ordinary HTML: no extra backslashes, no double quotes, and no lurking Java syntax.

? You can use standard Web-site development tools. Even HTML tools that know nothing about JSP can be used because they simply ignore the JSP tags.

? You can divide up your development team. The Java programmers can work on the dynamic code. The Web developers can concentrate on the presentation layer. On large projects, this division is very important. Depending on the size of your team and the complexity of your project, you can enforce a weaker or stronger separation between the static HTML and the dynamic content.

Now, this discussion is not to say that you should stop using servlets and use only JSP instead. By no means. Almost all projects will use both. For some requests in your project, you will use servlets. For others, you will use JSP. For still others, you will combine them with the MVC architecture . You want the appropriate tool for the job, and servlets, by themselves, do not complete your toolkit.

1.2 SOURCE OF JSP

The technique of JSP of the company of Sun, making the page of Web develop the personnel can use the HTML perhaps marking of XML to design to turn the end page with format. Use the perhaps small script future life of marking of JSP becomes the dynamic state on the page contents.( the contents changes according to the claim of)

The Java Servlet is a technical foundation of JSP, and the large Web applies the development of the procedure to need the Java Servlet to match with with the JSP and then can complete, this name of Servlet comes from the Applet, the local translation method of now is a lot of, this book in order not to misconstruction, decide the direct adoption Servlet but don't do any translation, if reader would like to, can call it as" small service procedure". The Servlet is similar to traditional CGI, ISAPI, NSAPI etc. Web procedure development the function of the tool in fact, at use the Java Servlet hereafter, the customer need not use again the lowly method of CGI of efficiency, also need not use only the ability come to born page of Web of dynamic state in the method of API that a certain fixed Web server terrace circulate. Many servers of Web all support the Servlet, even not support the Servlet server of Web directly and can also pass the additional applied server and the mold pieces to support the Servlet. Receive benefit in the characteristic of the Java cross-platform, the Servlet is also a terrace irrelevant, actually, as long as match the norm of Java Servlet, the Servlet is complete to have nothing to do with terrace and is to have nothing to do with server of Web. Because the Java Servlet is internal to provide the service by the line distance, need not start a progress to the each claimses, and make use of the multi-threading mechanism can at the same time for several claim service, therefore the efficiency of Java Servlet is very high.

But the Java Servlet also is not to has no weakness, similar to traditional CGI, ISAPI, the NSAPI method, the Java Servlet is to make use of to output the HTML language sentence to carry out the dynamic state web page of, if develop the whole website with the Java Servlet, the integration process of the dynamic state part and the static state page is an evil-foreboding dream simply. For solving this kind of weakness of the Java Servlet, the SUN released the JSP.

A number of years ago, Marty was invited to attend a small 20-person industry roundtable discussion on software technology. Sitting in the seat next to Marty was James Gosling, inventor of the Java programming language. Sitting several seats away was a high-level manager from a very large software company in Redmond, Washington. During the discussion, the moderator brought up the subject of Jini, which at that time was a new Java technology. The moderator asked the manager what he thought of it, and the manager responded that it was too early to tell, but that it seemed to be an excellent idea. He went on to say that they would keep an eye on it, and if it seemed to be catching on, they would follow his company's usual "embrace and extend" strategy. At this point, Gosling lightheartedly interjected "You mean disgrace and distend."

Now, the grievance that Gosling was airing was that he felt that this company would take technology from other companies and suborn it for their own purposes. But guess what? The shoe is on the other foot here. The Java community did not invent the idea of designing pages as a mixture of static HTML and dynamic code marked with special tags. For example, Cold Fusion did it years earlier. Even ASP (a product from the very software company of the aforementioned manager) popularized this approach before JSP came along and decided to jump on the bandwagon. In fact, JSP not only adopted the general idea, it even used many of the same special tags as ASP did.

The JSP is an establishment at the model of Java servlets on of the expression layer technique, it makes the plait write the HTML to become more simple.Be like the SSJS, it also allows you carry the static state HTML contents and servers the script mix to put together the born dynamic state exportation. JSP the script language that the Java is the tacit approval, however, be like the ASP and can use other languages( such as JavaScript and VBScript), the norm of JSP also allows to use other languages.

1.3JSP CHARACTERISTICS

Is a service according to the script language in some one language of the statures system this kind of discuss, the JSP should be see make is a kind of script language. However, be a kind of script language, the JSP seemed to be too strong again, almost can use all Javas in the JSP.

Be a kind of according to text originally of, take manifestation as the central development technique, the JSP provided all advantages of the Java Servlet, and, when combine with a JavaBeans together, providing a kind of make contents and manifestation that simple way that logic separate. Separate the contents and advantage of logical manifestations is, the personnel who renews the page external appearance need not know the code of Java, and renew the JavaBeans personnel also need not be design the web page of expert in hand, can use to take the page of JavaBeans JSP to define the template of Web, to build up a from have the alike external appearance of the website that page constitute. JavaBeans completes the data to provide, having no code of Java in the template thus, this means that these templates can be written the personnel by a HTML plait to support. Certainly, can also make use of the Java Servlet to control the logic of the website, adjust through the Java Servlet to use the way of the document of JSP to separate website of logic and contents.

Generally speaking, in actual engine of JSP, the page of JSP is the edit and translate type while carry out, not explain the type of. Explain the dynamic state web page development tool of the type, such as ASP, PHP3 etc., because speed etc. reason, have already can't satisfy current the large electronic commerce needs appliedly, traditional development techniques are all at to edit and translate the executive way change, such as the ASP → ASP+;PHP3 → PHP4.

In the JSP norm book, did not request the procedure in the JSP code part( be called the Scriptlet) and must write with the Java definitely. Actually, have some engines of JSP are adoptive other script languages such as the EMAC- Script, etc., but actually this a few script languages also are to set up on the Java, edit and translate for the Servlet to carry out of. Write according to the norm of JSP, have no Scriptlet of relation with Java also is can of, however, mainly lie in the ability and JavaBeans, the Enterprise JavaBeanses because of the JSP strong function to work together, so even is the Scriptlet part not to use the Java, edit and translate of performance code also should is related with Java.

1.4JSP MECHANISM

To comprehend the JSP how unite the technical advantage that above various speak of, come to carry out various result easily, the customer must understand the differentiation of" the module develops for the web page of the center" and" the page develops for the web page of the center" first.

The SSJS and ASP are all in several year ago to release, the network of that time is still very young, no one knows to still have in addition to making all business, datas and the expression logic enter the original web page entirely heap what better solve the method. This kind of model that take page as the center studies and gets the very fast development easily. However, along with change of time, the people know that this kind of method is unwell in set up large, the Web that can upgrade applies the procedure. The expression logic write in the script environment was lock in the page, only passing to shear to slice and glue to stick then can drive heavy use. Express the logic to usually mix together with business and the data logics, when this makes be the procedure member to try to change an external appearance that applies the procedure but do not want to break with its llied business logic, apply the procedure of maintenance be like to walk the similar difficulty on the eggshell. In fact in the business enterprise, heavy use the application of the module already through very mature, no one would like to rewrite those logics for their applied procedure.HTML and sketch the designer handed over to the implement work of their design the Web plait the one who write, make they have to double work- Usually is the handicraft plait to write, because have no fit tool and can carry the script and the HTML contents knot to the server to put together. Chien but speech, apply the complexity of the procedure along with the Web to promote continuously, the development method that take page as the center limits sex to become to get up obviously.

At the same time, the people always at look for the better method of build up the Web application procedure, the module spreads in customer's machine/ server the realm. JavaBeans and ActiveX were published the company to expand to apply the procedure developer for Java and Windows to use to come to develop the complicated procedure quickly by" the fast application procedure development"( RAD) tool. These techniques make the expert in the some realm be able to write the module for the perpendicular application plait in the skill area, but the developer can go fetch the usage directly but need not control the expertise of this realm.

Be a kind of take module as the central development terrace, the JSP appeared. It with the JavaBeans and Enterprise JavaBeans( EJB) module includes the model of the business and the data logic for foundation, provide a great deal of label and a script terraces to use to come to show in the HTML page from the contents of JavaBeans creation or send a present in return. Because of the property that regards the module as the center of the JSP, it can drive Java and not the developer of Java uses equally. Not the developer of Java can pass the JSP label( Tags) to use the JavaBeans that the deluxe developer of Java establish. The developer of Java not only can establish and use the JavaBeans, but also can use the language of Java to come to control more accurately in the JSP page according to the expression logic of the first floor JavaBeans.

See now how JSP is handle claim of HTTP. In basic claim model, a claim directly was send to JSP page in. The code of JSP controls to carry on hour of the logic processing and module of JavaBeanses' hand over with each other, and the manifestation result in dynamic state bornly, mixing with the HTML page of the static state HTML code. The Beans can be JavaBeans or module of EJBs. Moreover, the more complicated claim model can see make from is request other JSP pages of the page call sign or Java Servlets.

The engine of JSP wants to chase the code of Java that the label of JSP, code of Java in the JSP page even all converts into the big piece together with the static state HTML contents actually. These codes piece was organized the Java Servlet that customer can not see to go to by the engine of JSP, then the Servlet edits and translate them automatically byte code of Java.

Thus, the visitant that is the website requests a JSP page, under the condition of it is not knowing, an already born, the Servlet actual full general that prepared to edit and translate completes all works, very concealment but again and efficiently. The Servlet is to edit and translate of, so the code of JSP in the web page does not need when the every time requests that page is explain. The engine of JSP need to be edit and translate after Servlet the code end is modify only once, then this Servlet that editted and translate can be carry out. The in view of the fact JSP engine auto is born to edit and translate the Servlet also, need not procedure member begins to edit and translate the code, so the JSP can bring vivid sex that function and fast developments need that you are efficiently.

Compared with the traditional CGI, the JSP has the equal advantage. First, on the speed, the traditional procedure of CGI needs to use the standard importation of the system to output the equipments to carry out the dynamic state web page born, but the JSP is direct is mutually the connection with server. And say for the CGI, each interview needs to add to add a progress to handle, the progress build up and destroy by burning constantly and will be a not small burden for calculator of be the server of Web. The next in order, the JSP is specialized to develop but design for the Web of, its purpose is for building up according to the Web applied procedure, included the norm and the tool of a the whole set. Use the technique of JSP can combine a lot of JSP pages to become a Web application procedure very expediently.


中文翻譯

JSP的技術(shù)發(fā)展歷史

Java Server Pages(JSP)是一種基于web的腳本編程技術(shù),類似于網(wǎng)景公司的服務(wù)器端Java腳本語言—— server-side JavaScript(SSJS)和微軟的Active Server Pages(ASP)。與SSJS和ASP相比,JSP具有更好的可擴(kuò)展性,并且它不專屬于任何一家廠商或某一特定的Web服務(wù)器。盡管JSP規(guī)范是由Sun公司制定的,但任何廠商都可以在自己的系統(tǒng)上實(shí)現(xiàn)JSP。

在Sun正式發(fā)布JSP(Java Server Pages)之后,這種新的Web應(yīng)用開發(fā)技術(shù)很快引起了人們的關(guān)注。JSP為創(chuàng)建高度動(dòng)態(tài)的Web應(yīng)用提供了一個(gè)獨(dú)特的開發(fā)環(huán)境。按照Sun的說法,JSP能夠適應(yīng)市場(chǎng)上包括Apache WebServer、IIS4.0在內(nèi)的85%的服務(wù)器產(chǎn)品。

本文將介紹JSP相關(guān)的知識(shí),以及JavaBean的相關(guān)內(nèi)容,當(dāng)然都是比較粗略的介紹其中的基本內(nèi)容,僅僅起到拋磚引玉的作用,如果讀者需要更詳細(xì)的信息,請(qǐng)參考相應(yīng)的JSP的書籍。

1.1 概述

JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),其在動(dòng)態(tài)網(wǎng)頁的建設(shè)中有其強(qiáng)大而特別的功能。JSP與Microsoft的ASP技術(shù)非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。下面我們簡(jiǎn)單的對(duì)它進(jìn)行介紹。

JSP頁面最終會(huì)轉(zhuǎn)換成servlet。因而,從根本上,JSP頁面能夠執(zhí)行的任何任務(wù)都可以用servlet來完成。然而,這種底層的等同性并不意味著servlet和JSP頁面對(duì)于所有的情況都等同適用。問題不在于技術(shù)的能力,而是二者在便利性、生產(chǎn)率和可維護(hù)性上的不同。畢竟,在特定平臺(tái)上能夠用Java編程語言完成的事情,同樣可以用匯編語言來完成,但是選擇哪種語言依舊十分重要。

和單獨(dú)使用servlet相比,JSP提供下述好處:

JSP中HTML的編寫與維護(hù)更為簡(jiǎn)單。JSP中可以使用常規(guī)的HTML:沒有額外的反斜杠,沒有額外的雙引號(hào),也沒有暗含的Java語法。

能夠使用標(biāo)準(zhǔn)的網(wǎng)站開發(fā)工具。即使是那些對(duì)JSP一無所知的HTML工具,我們也可以使用,因?yàn)樗鼈儠?huì)忽略JSP標(biāo)簽(JSP tags)。

可以對(duì)開發(fā)團(tuán)隊(duì)進(jìn)行劃分。Java程序員可以致力于動(dòng)態(tài)代碼。Web開發(fā)人員可以將經(jīng)理集中在表示層(presentation layer)上。對(duì)于大型的項(xiàng)目,這種劃分極為重要。依據(jù)開發(fā)團(tuán)隊(duì)的大小,及項(xiàng)目的復(fù)雜程度,可以對(duì)靜態(tài)HTML和動(dòng)態(tài)內(nèi)容進(jìn)行弱分離(weaker separation)和強(qiáng)分離(stronger separation)。

此處的討論并不是說人們應(yīng)該放棄使用servlet而僅僅使用JSP。事實(shí)上,幾乎所有的項(xiàng)目都會(huì)同時(shí)用到這兩種技術(shù)。在某些項(xiàng)目中,更適宜選用servlet,而針對(duì)項(xiàng)目中的某些請(qǐng)求,我們可能會(huì)在MVC構(gòu)架下組合使用這兩項(xiàng)技術(shù)。我們總是希望用適當(dāng)?shù)墓ぞ咄瓿上鄬?duì)應(yīng)的工作,僅僅是servlet并不一定能夠勝任所有工作。

1.2 JSP的由來

Sun公司的JSP技術(shù),使Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請(qǐng)求來變化的)。

Java Servlet是JSP技術(shù)的基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成,Servlet這個(gè)名稱源于Applet,現(xiàn)在國(guó)內(nèi)的翻譯方式很多,本書為了避免誤會(huì),決定直接采用Servlet而不做任何翻譯,讀者如果愿意,可以稱之為“小服務(wù)程序”。Servlet其實(shí)和傳統(tǒng)的CGI、ISAPI、NSAPI等Web程序開發(fā)工具的作用是相似的,在使用Java Servlet以后,用戶不必再使用效率低下的CGI方式,也不必使用只能在某個(gè)固定Web服務(wù)器平臺(tái)運(yùn)行的API方式來動(dòng)態(tài)生成Web頁面。許多Web服務(wù)器都支持Servlet,即使不直接支持Servlet的Web服務(wù)器也可以通過附加的應(yīng)用服務(wù)器和模塊來支持Servlet。得益于Java的跨平臺(tái)的特性,Servlet也是平臺(tái)無關(guān)的,實(shí)際上,只要符合Java Servlet規(guī)范,Servlet是完全與平臺(tái)無關(guān)且是與Web服務(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 Servlet是利用輸出HTML語句來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的,如果用Java Servlet來開發(fā)整個(gè)網(wǎng)站,動(dòng)態(tài)部分和靜態(tài)頁面的整合過程會(huì)非常難以實(shí)現(xiàn)。為了解決Java Servlet的這種缺點(diǎn),SUN推出了JSP。

許多年前,Marty受到邀請(qǐng),參加一個(gè)有關(guān)軟件技術(shù)的小型研討會(huì).坐在Marty旁邊的人是James Gosling--- Java編程語言的發(fā)明者。隔幾個(gè)位置,是來自華盛頓一家大型軟件公司的高級(jí)經(jīng)理。在討論過程中,研討會(huì)的主席提出了Jini的議題,這在當(dāng)時(shí)是一項(xiàng)新的Java技術(shù)。主席向該經(jīng)理詢問他的想法.他回答說,雖然現(xiàn)在言之過早,但這看起來會(huì)是非常有前途的一項(xiàng)技術(shù)。他們會(huì)持續(xù)關(guān)注這項(xiàng)技術(shù),如果這項(xiàng)技術(shù)變得流行起來,他們會(huì)遵循公司的“接受并擴(kuò)充(embrace and extend)”的策略.此時(shí), Gosling隨意地插話說“你的意思其實(shí)就是不接受且不擴(kuò)充(disgrace and distend)?!?br>
在此, Gosling的抱怨顯示出,他感到這個(gè)公司會(huì)從其他公司那里拿走技術(shù),用于他們自己的目的.出人意料的是,形勢(shì)已經(jīng)完全不同。Java團(tuán)隊(duì)并沒有發(fā)明這一思想----將頁面設(shè)計(jì)成由靜態(tài)HTML和用特殊標(biāo)簽標(biāo)記的動(dòng)態(tài)代碼混合組成.。ColdFusion多年前就已經(jīng)這樣做了。甚至ASP(來自于前述經(jīng)理所在公司的一項(xiàng)產(chǎn)品)都在JSP出現(xiàn)之前推廣了這種方式。實(shí)際上,JSP不只采用了這種通用概念,它甚至使用許多和ASP相同的特殊標(biāo)簽。

JSP是建立在Java servlets模型之上的表達(dá)層技術(shù),它使編寫HTML變得更簡(jiǎn)單。像SSJS一樣,它也允許你將靜態(tài)HTML內(nèi)容與服務(wù)器端腳本混合起來生成動(dòng)態(tài)輸出。JSP把Java作為默認(rèn)的腳本語言,然而,就像ASP可以使用其他語言(如JavaScript和VBScript)一樣,JSP規(guī)范也允許使用其他語言。

1.3 JSP的特點(diǎn)

按照腳本語言是服務(wù)于某一個(gè)子系統(tǒng)的語言這種論述,JSP應(yīng)當(dāng)被看作是一種腳本語言。然而,作為一種腳本語言,JSP又顯得過于強(qiáng)大了,在JSP中幾乎可以使用全部的Java類。

作為一種基于文本的、以顯示為中心的開發(fā)技術(shù),JSP提供了Java Servlet的所有好處,并且,當(dāng)與一個(gè)JavaBeans類結(jié)合在一起時(shí),JSP提供了一種使內(nèi)容和顯示邏輯分開的簡(jiǎn)單方式。分開內(nèi)容和顯示邏輯的好處是,更新頁面外觀的人員不必懂得Java代碼,而更新JavaBeans類的人員也不必是設(shè)計(jì)網(wǎng)頁的行家里手,就可以用帶JavaBeans類的JSP頁面來定義Web模板,以建立一個(gè)由具有相似的外觀的頁面組成的網(wǎng)站。JavaBeans類完成數(shù)據(jù)提供,這樣在模板中就沒有Java代碼,這意味著這些模板可以由一個(gè)HTML編寫人員來維護(hù)。當(dāng)然,也可以利用Java Servlet來控制網(wǎng)站的邏輯,通過Java Servlet調(diào)用JSP文件的方式來將網(wǎng)站的邏輯和內(nèi)容分離。

一般來說,在實(shí)際的JSP引擎中,JSP頁面在執(zhí)行時(shí)是編譯式,而不是解釋式的。解釋式的動(dòng)態(tài)網(wǎng)頁開發(fā)工具如ASP、PHP3等由于速度等原因已經(jīng)滿足不了當(dāng)前大型電子商務(wù)應(yīng)用的需要了,傳統(tǒng)的開發(fā)技術(shù)都在向編譯執(zhí)行的方式改變,如ASP→ASP+;PHP3→PHP4。

在JSP規(guī)范書中,并沒有明確要求JSP中的程序代碼部分(稱為Scriptlet)一定要用Java來寫。實(shí)際上,有一些JSP引擎就是采用的其他腳本語言,如EMAC-Script、WebL等,但實(shí)際上這幾種腳本語言也是構(gòu)建在Java上面,編譯為Servlet來實(shí)現(xiàn)的。按照J(rèn)SP規(guī)范書寫,和Java沒有任何關(guān)系的Scriptlet也是可以的,不過,由于JSP的強(qiáng)大功能主要在于能和JavaBeans、Enterprise JavaBeans共同運(yùn)轉(zhuǎn),所以即使是Scriptlet部分不使用Java,編譯成的執(zhí)行代碼也應(yīng)該是與Java相關(guān)的。

1.4 JSP的機(jī)制

要理解JSP怎樣聯(lián)合以上各種所提到的技術(shù)的優(yōu)點(diǎn),從而輕而易舉地實(shí)現(xiàn)各種效果,用戶必須首先了解“組件為中心的網(wǎng)頁開發(fā)”和“頁面為中心的網(wǎng)頁開發(fā)”的區(qū)別。

SSJS和ASP都是在幾年前推出的,那時(shí)網(wǎng)絡(luò)還很年輕,沒有人知道除了把所有的商務(wù)、數(shù)據(jù)和表達(dá)邏輯統(tǒng)統(tǒng)堆進(jìn)原始網(wǎng)頁中之外還有什么更好的解決方法。這種以頁面為中心的模型容易學(xué)習(xí)并且得到相當(dāng)快速的發(fā)展。然而,隨著時(shí)間的推移,人們認(rèn)識(shí)到這種方法不適于構(gòu)建大型的、可升級(jí)的Web應(yīng)用程序。在腳本環(huán)境中書寫的表達(dá)邏輯被鎖在頁面內(nèi),只有通過剪切和粘貼才能被重用。表達(dá)邏輯通常和商務(wù)及數(shù)據(jù)邏輯混在一起,這使得當(dāng)程序員試圖改變一個(gè)應(yīng)用程序的外觀而不想破壞與之緊密結(jié)合的商務(wù)邏輯時(shí),應(yīng)用程序的維護(hù)就變得十分艱難。其事實(shí)上,企業(yè)中可重用組件的應(yīng)用早已經(jīng)很成熟,沒有人愿意為它們的應(yīng)用程序重寫那些邏輯。HTML和圖形設(shè)計(jì)師把它們的設(shè)計(jì)的實(shí)施工作交給了Web編寫者,使他們不得不加倍工作—— 常常是手工編寫,因?yàn)闆]有合適的工具可以把服務(wù)器端腳本與HTML內(nèi)容結(jié)合起來。簡(jiǎn)而言之,隨著Web應(yīng)用程序的復(fù)雜性不斷提升,以頁面為中心的開發(fā)方式的局限性變得明顯起來。

與此同時(shí),人們一直在尋找建立Web應(yīng)用程序的更好方法,組件在客戶機(jī)/服務(wù)器領(lǐng)域流行起來。JavaBeans和ActiveX被“快速應(yīng)用程序開發(fā)”(RAD)工具發(fā)行商推廣給Java和Windows應(yīng)用程序開發(fā)者用來快速開發(fā)復(fù)雜的程序。這些技術(shù)使某領(lǐng)域內(nèi)的專家可以為本領(lǐng)域內(nèi)的垂直應(yīng)用編寫組件,而開發(fā)者可以直接拿來使用而不必掌握這一領(lǐng)域的專門技術(shù)。

作為一種以組件為中心的開發(fā)平臺(tái),JSP出現(xiàn)了。它以JavaBeans和Enterprise JavaBeans(EJB)組件包含商務(wù)和數(shù)據(jù)邏輯的模型為基礎(chǔ),提供大量標(biāo)簽和一個(gè)腳本平臺(tái)用來在HTML頁中顯示由JavaBeans產(chǎn)生或回送的內(nèi)容。由于JSP的以組件為中心的性質(zhì),它可以被Java和非Java開發(fā)者同樣使用。非Java開發(fā)者可以通過JSP的標(biāo)簽(Tags)來使用高級(jí)Java開發(fā)者創(chuàng)建的JavaBeans。Java開發(fā)者不僅可以創(chuàng)建和使用JavaBeans,還能在JSP頁中使用Java語言來更精密地控制基于底層JavaBeans的表達(dá)邏輯。

現(xiàn)在來看看JSP是如何處理HTTP請(qǐng)求的。在基本請(qǐng)求模型中,一個(gè)請(qǐng)求直接被送到JSP頁中。JSP代碼控制著進(jìn)行邏輯處理時(shí)與JavaBeans組件的交互,并在動(dòng)態(tài)生成的、混合了靜態(tài)HTML代碼的HTML頁中顯示結(jié)果。Beans 可以是JavaBeans 或EJB組件。另外,更加復(fù)雜的請(qǐng)求模型可看作從被請(qǐng)求頁呼叫其他JSP頁或Java Servlets。

JSP引擎實(shí)際上要把JSP標(biāo)簽、JSP頁中的Java代碼甚至連同靜態(tài)HTML內(nèi)容都轉(zhuǎn)換為大塊的Java代碼。這些代碼塊被JSP引擎組織到用戶看不到的Java Servlet中去,然后Servlet自動(dòng)把它們編譯成Java字節(jié)碼。這樣,當(dāng)網(wǎng)站的訪問者請(qǐng)求一個(gè)JSP頁時(shí),在它不知道的情況下,一個(gè)已經(jīng)生成的、預(yù)編譯過的Servlet實(shí)際上將完成所有的工作,非常隱蔽而又高效。因?yàn)镾ervlet是編譯過的,所以網(wǎng)頁中的JSP代碼不需要在每次請(qǐng)求該頁時(shí)被解釋一遍。JSP引擎只需在Servlet代碼最后被修改后編譯一次,然后這個(gè)編譯過的Servlet就可以被執(zhí)行了。由于是JSP引擎自動(dòng)生成并編譯Servlet,不用程序員動(dòng)手編譯代碼,所以JSP能帶給你高效的性能和快速開發(fā)所需的靈活性。

和傳統(tǒng)的CGI相比較,JSP有相當(dāng)?shù)膬?yōu)勢(shì)。首先,在速度上,傳統(tǒng)的CGI程序需要使用系統(tǒng)的標(biāo)準(zhǔn)輸入輸出設(shè)備來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的生成,而JSP是直接和服務(wù)器相關(guān)聯(lián)的。而且對(duì)于CGI來說,每一個(gè)訪問就需要新增加一個(gè)進(jìn)程來處理,進(jìn)程不斷地建立和銷毀對(duì)于作為Web服務(wù)器的計(jì)算機(jī)將是不小的負(fù)擔(dān)。其次,JSP是專門為Web開發(fā)而設(shè)計(jì)的,其目的是為了建立基于Web的應(yīng)用程序,其中包含了一整套的規(guī)范和工具。使用JSP技術(shù)可以很方便地將一大堆JSP頁面組合成為一個(gè)Web應(yīng)用程序。

關(guān)鍵詞:論文,設(shè)計(jì),村鎮(zhèn),旅游

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉