畢業(yè)論文-綠化管理系統(tǒng)-基于web服務(wù)_第1頁
畢業(yè)論文-綠化管理系統(tǒng)-基于web服務(wù)_第2頁
畢業(yè)論文-綠化管理系統(tǒng)-基于web服務(wù)_第3頁
畢業(yè)論文-綠化管理系統(tǒng)-基于web服務(wù)_第4頁
畢業(yè)論文-綠化管理系統(tǒng)-基于web服務(wù)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGEI北京理工大學(xué)珠海學(xué)院綠化管理系統(tǒng)——基于web服務(wù)摘要如今,科學(xué)技術(shù)已是第一生產(chǎn)力。計算機發(fā)展到現(xiàn)在已經(jīng)是比較成熟的一門技術(shù)學(xué)科。管理系統(tǒng)在計算機中的應(yīng)用已非常普遍。不管是單位內(nèi)部使用還是以產(chǎn)品形式開發(fā),管理系統(tǒng)的需求都非常大。人們對管理的要求越來越多,越來越繁瑣,傳統(tǒng)的管理系統(tǒng)面臨著很大的挑戰(zhàn)。在信息不斷膨脹的今天,能更好地適應(yīng)需求,想法越新,越有創(chuàng)意,無疑可以在競爭中取得優(yōu)勢。對于傳統(tǒng)的管理系統(tǒng)比較常見的有,資產(chǎn)管理系統(tǒng),圖書館管理系統(tǒng),學(xué)生信息管理系統(tǒng)等。這些傳統(tǒng)管理系統(tǒng)如今在市場上已經(jīng)見怪不怪了,要想能夠吸引人們的眼光,無疑需要想出一些獨樹一幟的新穎的想法,但又不能脫離人們的需求。本課題中設(shè)計了綠化管理系統(tǒng),專門對本校北京理工大學(xué)珠海學(xué)院的綠化帶及樹木進行管理,實現(xiàn)管理系統(tǒng)具備的基本功能增刪改查,本系統(tǒng)還為推廣本校進行了網(wǎng)絡(luò)化設(shè)計。綠化管理系統(tǒng)的提出,可謂別具匠心,在傳統(tǒng)的管理系統(tǒng)上另辟蹊徑。本系統(tǒng)管理學(xué)校的所有綠化帶的信息,實現(xiàn)對綠化帶信息的增加,刪除,改動,查詢以及數(shù)據(jù)庫的備份和還原等功能,極大的方便了負責(zé)學(xué)校綠化管理的老師對樹木進行管理。關(guān)鍵詞:管理系統(tǒng)綠化webZhuhai,BeijingInstituteofTechnologyCollegeofgreenmanagementsystem-web-basedservicesABSTRACTToday,scienceandtechnologyareprimaryproductiveforce.Acomputerisnowdevelopedintoarelativelymaturetechnologysubjects.Managementsysteminthecomputerapplicationsareverycommon.Whetherinterioroftheirflatsorinproductformtheuseofthedevelopment,managementsystemrequirementsareverylarge.Peoplemanagementrequirements,andmoreandcumbersome,thetraditionalmanagementsystemisfacinggreatchallenges.Intoday'sever-expandinginformationandcanbettermeettheneeds,themorenewideas,themorecreative,nodoubtthecompetitionadvantage.Forthetraditionalmanagementsystemsaremorecommon,assetmanagementsystem,librarymanagementsystem,studentinformationmanagementsystems.Today,thesetraditionalmanagementsystemsinthemarkethasbeenflattering,tobeabletoattractpeople'seyes,nodoubtneedtocomeupwithsomeuniqueinnovativeideas,butcannotbedivorcedfrompeople'sdemand.Inthispaper,greenmanagementsystemwasdesignedspecificallyfortheUniversityZhuhai,BeijingInstituteofTechnologyGreenmanagementsystemproposed,canbedescribedasuniqueingenuity,inthetraditionalmanagementsystem,openanewpath.Thesystemmanagementofallschools,greenbeltoftheinformation,toinformationonthegreenbelttoadd,delete,change,queryanddatabasebackupandrestorefunctions,greatlyfacilitatethemanagementinchargeoftheschool'steacherofthegreentreesmanagement.Keywords:greenwebmanagementsystem目錄摘要 IIABSTRACT III1緒論 11.1軟件管理系統(tǒng)發(fā)展的歷程 11.2本課題的研究背景 21.3本課題的研究意義 21.4本課題主要研究的內(nèi)容 21.5本章小結(jié) 22系統(tǒng)開發(fā)環(huán)境 32.1硬件開發(fā)環(huán)境 32.1.1服務(wù)器 32.1.2客戶端 62.2軟件開發(fā)環(huán)境 82.2.1windowsserver2003服務(wù)器操作系統(tǒng) 82.2.2windowsxp客戶端操作系統(tǒng) 92.2.3windows下開發(fā)軟件visualstudio2008 102.2.4數(shù)據(jù)庫開發(fā)軟件SQLServer2005Express 112.3本章小結(jié) 123系統(tǒng)設(shè)計與分析 133.1系統(tǒng)用例圖 133.2補充規(guī)約 143.3系統(tǒng)總體設(shè)計圖 153.4本章小結(jié) 154系統(tǒng)開發(fā) 164.1web服務(wù)的開發(fā) 164.1.1系統(tǒng)管理員 164.1.2查詢 194.1.3數(shù)據(jù)更新 204.1.4數(shù)據(jù)庫備份 264.2簡單測試應(yīng)用程序的開發(fā) 294.3本章小結(jié) 325系統(tǒng)測試 325.1本地iis的配置 325.2配置客戶端pc的軟件運行環(huán)境 345.3測試 365.4本章小結(jié) 426總結(jié)與展望 436.1本課題完成的主要工作 436.2存在問題與進一步需要研究的內(nèi)容 43參考文獻 44謝辭 451緒論1.1軟件管理系統(tǒng)發(fā)展的歷程信息管理系統(tǒng)(MIS)涉及經(jīng)濟學(xué)、管理學(xué)、運籌學(xué)、統(tǒng)計學(xué)、計算機科學(xué)等很多學(xué)科,是各學(xué)科緊密相連綜合交叉的一種系統(tǒng)。作為管理系統(tǒng),它的理論和方法正在不斷發(fā)展與完善。信息管理系統(tǒng)除了具備增、刪、改、查的基本功能外,還需具備預(yù)測、計劃、控制和輔助決策特有功能。具體是:(1)數(shù)據(jù)處理功能。包括數(shù)據(jù)收集和輸入、數(shù)據(jù)傳輸、數(shù)據(jù)存儲、數(shù)據(jù)加工和輸出。(2)預(yù)測功能。運用現(xiàn)代數(shù)學(xué)方法、統(tǒng)計方法和模擬方法,根據(jù)過去的數(shù)據(jù)預(yù)測外來的情況。(3)計劃功能。根據(jù)企業(yè)提供的約束條件,合理地安排各職能部門的計劃,按照不同的管理層,提供不同的管理層,提供相應(yīng)的計劃報告。(4)控制功能。根據(jù)各職能部門提供的數(shù)據(jù),對計劃的執(zhí)行情況進行檢測、檢測、比較執(zhí)行與計劃的差異,對差異情況分析其原因。(5)輔助決策功能。采用各種數(shù)學(xué)模型和所存儲的大量數(shù)據(jù),及時推倒出有關(guān)問題的最優(yōu)解或滿意解,輔助各級管理人員進行決策,以期合理利用人財物和信息資源,取得較大的經(jīng)濟效益。從某種意義上講。信息管理系統(tǒng)是組織理論、會計學(xué)、統(tǒng)計學(xué)、數(shù)學(xué)模型及經(jīng)濟學(xué)的混合物,它全面使用計算機技術(shù)、網(wǎng)絡(luò)通信技術(shù)、數(shù)據(jù)庫技術(shù)等,是多學(xué)科交叉的邊緣技術(shù),因此是技術(shù)系統(tǒng)。從社會技術(shù)系統(tǒng)的觀點來看,MIS和組織結(jié)構(gòu)之間是相互影響的,引進MIS將導(dǎo)致新組織結(jié)構(gòu)的產(chǎn)生,而現(xiàn)存的組織結(jié)構(gòu)又對MIS的分析、設(shè)計、引進的成功與否產(chǎn)生重要影響,其影響要素包括組織環(huán)境、組織戰(zhàn)略、組織目標、組織結(jié)構(gòu)、組織過程和組織文化。所以信息管理系統(tǒng)發(fā)展到今天,既是技術(shù)系統(tǒng),同時也是社會系統(tǒng)。1.2本課題的研究背景管理系統(tǒng)在計算機中的應(yīng)用已非常普遍。不管是單位內(nèi)部使用還是以產(chǎn)品形式開發(fā),管理系統(tǒng)的需求都非常大。人們對管理的要求越來越多,越來越繁瑣,傳統(tǒng)的管理系統(tǒng)面臨著很大的挑戰(zhàn)。在信息不斷膨脹的今天,能更好地適應(yīng)需求,想法越新,越有創(chuàng)意,無疑可以在競爭中取得優(yōu)勢。對于傳統(tǒng)的管理系統(tǒng)比較常見的有,資產(chǎn)管理系統(tǒng),圖書館管理系統(tǒng),學(xué)生信息管理系統(tǒng)等。這些傳統(tǒng)管理系統(tǒng)如今在市場上已經(jīng)見怪不怪了,要想能夠吸引人們的眼光,無疑需要想出一些獨樹一幟的新穎的想法,但又不能脫離人們的需求。1.3本課題的研究意義本課題設(shè)計了綠化管理系統(tǒng),專門對本校北京理工大學(xué)珠海學(xué)院的綠化帶及樹木進行管理,實現(xiàn)管理系統(tǒng)具備的基本功能增刪改查。對于綠化管理在計算機中的應(yīng)用是很少見的,本綠化管理系統(tǒng)的提出,可謂別具匠心,在傳統(tǒng)的管理系統(tǒng)上另辟蹊徑。本系統(tǒng)管理學(xué)校的所有綠化帶的信息,實現(xiàn)對綠化帶信息的增加,刪除,改動,查詢以及數(shù)據(jù)庫的備份和還原等功能,極大的方便了負責(zé)學(xué)校綠化管理的老師對樹木進行管理。1.4本課題主要研究的內(nèi)容本課題的主要內(nèi)容是在服務(wù)器pc和客戶端pc上開發(fā)系統(tǒng)相應(yīng)的軟件及相關(guān)的服務(wù)。在課題中所做的工作主要為幾個方面:后臺數(shù)據(jù)庫的開發(fā)Web服務(wù)開發(fā)簡單測試應(yīng)用程序的開發(fā)Asp展示網(wǎng)頁的開發(fā)1.5本章小結(jié)本章主要敘述了信息管理系統(tǒng)的發(fā)展歷程,以及本課題的研究背景和本課題研究的意義,列出了本課題需要做的主要工作。2系統(tǒng)開發(fā)環(huán)境2.1硬件開發(fā)環(huán)境本系統(tǒng)主要的硬件開發(fā)環(huán)境是服務(wù)器pc和客戶端pc。服務(wù)器pc主要搭建起服務(wù)器環(huán)境及存放供客戶端pc訪問的web服務(wù)和asp網(wǎng)頁,客戶端pc主要存放訪問服務(wù)器的應(yīng)用軟件及需要有IE瀏覽器的支持。由此看出,服務(wù)器pc的軟件負擔(dān)比較重,故配置上要求需要高一些,服務(wù)器pc的開發(fā)配置如下:CPU:3.06G內(nèi)存:1G以上(2G最佳)硬盤:80G以上顯卡:128M顯存以上客戶端pc只需要有.net平臺及IE瀏覽器支持,故軟件負擔(dān)不會太重,客戶端配置如下:CPU:1.80G主頻以上內(nèi)存:256M以上硬盤:80G以上顯卡:128M顯存以上2.1.1服務(wù)器服務(wù)器指一個管理資源并為用戶提供服務(wù)的計算機軟件,通常分為文件服務(wù)器、數(shù)據(jù)庫服務(wù)器和應(yīng)用程序服務(wù)器。運行以上軟件的計算機或計算機系統(tǒng)也被稱為服務(wù)器。從廣義上講,服務(wù)器是指網(wǎng)絡(luò)中能對其它機器提供某些服務(wù)的計算機系統(tǒng)(如果一個PC對外提供ftp服務(wù),也可以叫服務(wù)器)。從狹義上來講,服務(wù)器是專指某些高性能計算機,能夠通過網(wǎng)絡(luò),對外提供服務(wù)。相對于普通PC來說,服務(wù)器在穩(wěn)定性、安全性、性能等方面都要求更高,因此CPU、芯片組、內(nèi)存、磁盤系統(tǒng)、網(wǎng)絡(luò)等硬件和普通PC有所不同。圖2-1主流服務(wù)器服務(wù)器作為網(wǎng)絡(luò)的節(jié)點,存儲、處理網(wǎng)絡(luò)上80%的數(shù)據(jù)、信息,因此也被稱為網(wǎng)絡(luò)的靈魂。它是網(wǎng)絡(luò)上一種為客戶端計算機提供各種服務(wù)的高可用性計算機,它在網(wǎng)絡(luò)操作系統(tǒng)的控制下,將與其相連的硬盤、磁帶、打印機、Modem及各種專用通訊設(shè)備提供給網(wǎng)絡(luò)上的客戶站點共享,也能為網(wǎng)絡(luò)用戶提供集中計算、信息發(fā)表及數(shù)據(jù)管理等服務(wù)。它的高性能主要體現(xiàn)在高速度的運算能力、長時間的可靠運行、強大的外部數(shù)據(jù)吞吐能力等方面。圖2-2服務(wù)器內(nèi)部組織結(jié)構(gòu)服務(wù)器的構(gòu)成與微機基本相似,有處理器、硬盤、內(nèi)存、系統(tǒng)總線等,它們是針對具體的網(wǎng)絡(luò)應(yīng)用特別制定的,因而服務(wù)器與微機在處理能力、穩(wěn)定性、可靠性、安全性、可擴展性、可管理性等方面存在差異很大。尤其是隨著信息技術(shù)的進步,網(wǎng)絡(luò)的作用越來越明顯,對自己信息系統(tǒng)的數(shù)據(jù)處理能力、安全性等的要求也越來越高。圖2-3服務(wù)器內(nèi)部硬件結(jié)構(gòu)由于服務(wù)器在網(wǎng)絡(luò)中提供服務(wù),那么這個服務(wù)的質(zhì)量對承擔(dān)多種應(yīng)用的網(wǎng)絡(luò)計算環(huán)境是非常重要的,承擔(dān)這個服務(wù)的計算機硬件必須有能力保障服務(wù)質(zhì)量。這個服務(wù)首先要有一定的容量,能響應(yīng)單位時間內(nèi)合理數(shù)量的服務(wù)器請求,同時這個服務(wù)對單個服務(wù)請求的響應(yīng)時間要盡量快,還有這個服務(wù)要在要求的時間范圍內(nèi)一直存在。如果一個WEB服務(wù)器只能在1分鐘里處理1個主頁請求,1個以外的其他請求必須排隊等待,而這一個請求必須要3分鐘才能處理完,同時這個WEB服務(wù)器在1個小時以前可以訪問到,但一個小時以后卻連接不上了,這種WEB服務(wù)器在現(xiàn)在的Internet計算環(huán)境里是無法想象的?,F(xiàn)在的WEB服務(wù)器必須能夠同時處理上千個訪問,同時每個訪問的響應(yīng)時間要短,而且這個WEB服務(wù)器不能停機,否則這個WEB服務(wù)器就會造成訪問用戶的流失。為達到上面的要求,作為服務(wù)器硬件必須具備如下的特點:性能,使服務(wù)器能夠在單位時間內(nèi)處理相當(dāng)數(shù)量的服務(wù)器請求并保證每個服務(wù)的響應(yīng)時間;可靠性,使得服務(wù)器能夠不停機;可擴展性,使服務(wù)器能夠隨著用戶數(shù)量的增加不斷提升性能。因此我們說不能把一臺普通的PC作為服務(wù)器來使用,因為,PC遠遠達不到上面的要求。這樣我們在服務(wù)器的概念上又加上一點就是服務(wù)器必須具有承擔(dān)服務(wù)并保障服務(wù)質(zhì)量的能力。這也是區(qū)別低價服務(wù)器和PC的差異的主要方面。在信息系統(tǒng)中,服務(wù)器主要應(yīng)用于數(shù)據(jù)庫和Web服務(wù),而PC主要應(yīng)用于桌面計算和網(wǎng)絡(luò)終端,設(shè)計根本出發(fā)點的差異決定了服務(wù)器應(yīng)該具備比PC更可靠的持續(xù)運行能力、更強大的存儲能力和網(wǎng)絡(luò)通信能力、更快捷的故障恢復(fù)功能和更廣闊的擴展空間,同時,對數(shù)據(jù)相當(dāng)敏感的應(yīng)用還要求服務(wù)器提供數(shù)據(jù)備份功能。而PC機在設(shè)計上則更加重視人機接口的易用性、圖像和3D處理能力及其他多媒體性能。2.1.2客戶端了解Client及Server間的關(guān)系。在計算機的世界里,凡是提供服務(wù)的一方我們稱為服務(wù)器(Server),而接受服務(wù)的另一方我們稱作客戶端(Client)。我們最常接觸到例子是局域網(wǎng)絡(luò)里的打印服務(wù)器所提供的打印服務(wù):提供打印服務(wù)的計算機,我們可以說它是打印服務(wù)器;而使用打印服務(wù)器提供打印服務(wù)的另一方,我們則稱作客戶端。但是誰是客戶端誰是服務(wù)器也不是絕對的,例如倘若原提供服務(wù)之服務(wù)器要使用其它機器所提供之服務(wù),則所扮演之角色即轉(zhuǎn)變?yōu)榭蛻舳?。而這種關(guān)系在因特網(wǎng)上,就變成使用者和網(wǎng)站的關(guān)系了。使用者透過調(diào)制解調(diào)器等設(shè)備上網(wǎng),在瀏覽器中輸入網(wǎng)址,透過HTTP通訊協(xié)議向網(wǎng)站提出瀏覽網(wǎng)頁的要求(Request)。網(wǎng)站收到使用者的要求后,將使用者要瀏覽的網(wǎng)頁數(shù)據(jù)傳輸給使用者,這個動作稱為響應(yīng)(Response)。網(wǎng)站提供網(wǎng)頁數(shù)據(jù)的服務(wù),使用者接受網(wǎng)站所提供的數(shù)據(jù)服務(wù);所以使用者在這里就是客戶端,響應(yīng)使用者要求的網(wǎng)站即稱為服務(wù)器。圖2-4客戶端與服務(wù)器的關(guān)系不過客戶端及伺服端的關(guān)系不見得一定建立在兩臺分開的機器上,同一臺機器中也有這種主從關(guān)系的存在。提供服務(wù)的伺服端及接受服務(wù)的客戶端也有可能都在同一臺機器上,例如我們在提供網(wǎng)頁的服務(wù)器上執(zhí)行瀏覽器瀏覽本機所提供的網(wǎng)頁,這樣在同一臺機器上就同時扮演伺服端及客戶端。圖2-5用戶客戶端通過因特網(wǎng)請求服務(wù)2.2軟件開發(fā)環(huán)境本設(shè)計用到的軟件開發(fā)環(huán)境主要有windowsserver2003服務(wù)器操作系統(tǒng),windowsxp客戶端操作系統(tǒng),visualstudio2008應(yīng)用開發(fā)軟件及SQLServer2005數(shù)據(jù)庫開發(fā)軟件。其中系統(tǒng)大部分的代碼和程序調(diào)試是在visualstudio2008及SQLServer2005完成的,因此visualstudio2008和SQLServer2005的使用將是本設(shè)計的重點。下面將對這幾個軟件開發(fā)環(huán)境依次進行講解。2.2.1windowsserver2003服務(wù)器操作系統(tǒng)WindowsServer2003是微軟的服務(wù)器操作系統(tǒng)。該產(chǎn)品最初叫作“Windows.NETServer”,后改成“Windows.NETServer2003”,最終被改成“WindowsServer2003”,于2003年3月28日圖2-6windowsserver2003操作系統(tǒng)WindowsServer2003是目前微軟推出的使用最廣泛的服務(wù)器操作系統(tǒng)。相對于Windows2000,此版本做了很多改進,特別是在改進的腳本和命令行工具,對微軟來說是一次革新——把一個完整的命令外殼帶進下一Windows版本的一部分。相對于windows2000,此版本主要有以下改進的方面:改進的ActiveDirectory(活動目錄)(如可以從schema中刪除類)。改進的GroupPolicy(組策略)操作和管理。改進的磁盤管理,如可以從ShadowCopy(卷影復(fù)制)中備份文件。WindowsServer2003有多種版本,每種都適合不同的商業(yè)需求:WindowsServer2003Web版WindowsServer2003標準版WindowsServer2003企業(yè)版WindowsServer2003數(shù)據(jù)中心版本設(shè)計中,為了開發(fā)和調(diào)試方便使用標準版+sp1補丁包進行開發(fā)。2.2.2windowsxp客戶端操作系統(tǒng)Windowsxp這個操作系統(tǒng)相信許多人都不會陌生。Windowsxp中文全稱為視窗操作系統(tǒng)體驗版。是微軟公司發(fā)布的一款視窗操作系統(tǒng)。它發(fā)行于2001年10月25日,原來的名稱是Whistler。微軟最初發(fā)行了兩個版本,家庭版(Home)和專業(yè)版(Professional)。家庭版的消費對象是家庭用戶,專業(yè)版則在家庭版的基礎(chǔ)上添加了新的為面向商業(yè)的設(shè)計的網(wǎng)絡(luò)認證、雙處理器等特性。且家庭版只支持1個處理器,專業(yè)版則支持2個。字母XP表示英文單詞的“體驗”(experience)。圖2-7windowsxp操作系統(tǒng)WindowsXP擁有一個叫做Luna(月神)的豪華亮麗的用戶圖形界面。WindowsXP的視窗標志也改為較清晰亮麗的四色視窗標志。WindowsXP帶有用戶圖形的登陸界面;全新的XP亮麗桌面,用戶若懷舊以前桌面可以換成傳統(tǒng)桌面。此外,WindowsXP還引入了一個“選擇任務(wù)”的用戶界面,使得工具條可以訪問任務(wù)的具體細節(jié)。然而,批評家認為這個基于任務(wù)的設(shè)計指示增加了視覺上的混亂,因為它除了提供比其它操作系統(tǒng)更簡單的工具欄以外并沒有添加新的特性。而額外進程的耗費又是可見的。由于微軟把很多以前是由第三方提供的軟件整合到操作系統(tǒng)中,XP受到了猛烈的批評。這些軟件包括防火墻、媒體播放器(WindowsMediaPlayer),即時通訊軟件(WindowsMessenger),以及它與MicrosoftPassport網(wǎng)絡(luò)服務(wù)的緊密結(jié)合,這都被很多計算機專家認為是安全風(fēng)險以及對個人隱私的潛在威脅。這些特性的增加被認為是微軟繼續(xù)其傳統(tǒng)的壟斷行為的持續(xù)。XP雖然存在許多風(fēng)險,但是這些對于普通用戶而言有時候卻無關(guān)緊要,而且安全性越高,許多功能反而受限或者需要特殊的設(shè)置才能開啟,因此如果非專業(yè)人員使用,XP反而是最簡單,通俗,易懂的操作系統(tǒng)。2.2.3windows下開發(fā)軟件visualstudio2008MicrosoftVisualStudio2008是面向WindowsVista、Office2007、Web2.0的下一代開發(fā)工具,代號“Orcas”,是對VisualStudio2005一次及時、全面的升級。VS2008引入了250多個新特性,整合了對象、關(guān)系型數(shù)據(jù)、XML的訪問方式,語言更加簡潔。使用VisualStudio2008可以高效開發(fā)Windows應(yīng)用。設(shè)計器中可以實時反映變更,XAML中智能感知功能可以提高開發(fā)效率。同時VisualStudio2008支持項目模板、調(diào)試器和部署程序。VisualStudio2008可以高效開發(fā)Web應(yīng)用,集成了ASP.NETAJAX1.0,包含ASP.NETAJAX項目模板,它還可以高效開發(fā)Office應(yīng)用和Mobile應(yīng)用。對于一個軟件開發(fā)人員,一個好的開發(fā)環(huán)境可以讓開發(fā)工作事半功倍,微軟公布了最新版VisualStudioShell的預(yù)覽,我們可以發(fā)現(xiàn)新版VS的開發(fā)界面分為兩個版本:整合模式和孤立模式,分別對基于語言的開發(fā)和基于特別工具的開發(fā)作了優(yōu)化。并將IronPython引入了VisualStudio,該界面將在VisualStudio2008的Beta2版本中出現(xiàn)。圖2-8VisualStudio2008開發(fā)工具VisualStudio2008開發(fā)工具特性:軟件開發(fā)更智能評點:VisualStudio2008很好用,特別是自動提示和重構(gòu)功能。VisualStudio2008中WCF的擴展,用起來很方便評點:VisualStudio2008對WCF的擴展,用起來很方便。VisualStudio2008中的多定向支持評點:VisualStudio2008為應(yīng)用程序的開發(fā)帶來了新的活力。VisualStudio2008對subversion的支持評點:雖然VS2008中并未集成Ankhsvn,但仍然不妨礙我們的使用。微軟整合了windowslive到VisualStudio2008中評點:VS2008程序員開發(fā)Live網(wǎng)絡(luò)服務(wù)平臺的有利武器。VisualStudio2008中的SQL數(shù)據(jù)庫發(fā)布評點:VS2008為數(shù)據(jù)庫的發(fā)布提供了更方便快捷的解決方案。VisualStudio2008加入拼寫檢查器評點:VisualStudio2008,很好,很強大。2.2.4數(shù)據(jù)庫開發(fā)軟件SQLServer2005ExpressMicrosoftSQLServer2005是用于大規(guī)模聯(lián)機事務(wù)處理(OLTP)、數(shù)據(jù)倉庫和電子商務(wù)應(yīng)用的數(shù)據(jù)庫和數(shù)據(jù)分析平臺。SQLServerExpress是一個免費、易用且便于管理的數(shù)據(jù)庫。SQLServerExpress與MicrosoftVisualStudio2008集成在一起,可以輕松開發(fā)功能豐富、存儲安全、可快速部署的數(shù)據(jù)驅(qū)動應(yīng)用程序。SQLServerExpress是免費的,可以再分發(fā)(受制于協(xié)議),還可以起到客戶端數(shù)據(jù)庫以及基本服務(wù)器數(shù)據(jù)庫的作用。SQLServerExpress是低端ISV、低端服務(wù)器用戶、創(chuàng)建Web應(yīng)用程序的專業(yè)開發(fā)人員以及創(chuàng)建客戶端應(yīng)用程序的編程愛好者的理想選擇。對于開發(fā)人員,SQLserver2005的有三個重要的特性是必須了解的。這三個重要特性分別是:企業(yè)數(shù)據(jù)管理、開發(fā)人員生產(chǎn)力和商務(wù)智能。下面將以表格的形式詳細的解析這三個特性。企業(yè)數(shù)據(jù)管理開發(fā)人員生產(chǎn)力商務(wù)智能SQLServer2005帶來了一個全新的企業(yè)級數(shù)據(jù)整合平臺。此平臺具有出色的ETL和整合能力,使得組織機構(gòu)能更加容易地管理來自于不同的關(guān)系型和非關(guān)系型數(shù)據(jù)源的數(shù)據(jù)。通過SQLServerIntegrationServices(SSIS),組織機構(gòu)能以整體的視角去考察它們的商業(yè)運營情況,從而能具有競爭優(yōu)勢。2.3本章小結(jié)本章主要對系統(tǒng)開發(fā)的軟件和硬件環(huán)境作了詳細的講解及使用這樣的軟件和硬件環(huán)境的優(yōu)點作了闡述,為后續(xù)的章節(jié)介紹作了鋪墊。3系統(tǒng)設(shè)計與分析3.1系統(tǒng)用例圖根據(jù)抽象與分析,系統(tǒng)用例圖如下:增加/刪除操作增加/刪除操作查詢操作《actor》增加/刪除系統(tǒng)《actor》查詢系統(tǒng)管理老師綠化管理系統(tǒng)登錄3.2補充規(guī)約簡介本文檔記錄了綠化管理系統(tǒng)所有未在用例中描述的需求。功能性日志和錯誤處理能夠備份樹木的死亡記錄及所有錯誤信息。安全性任何管理老師都需通過認證才可使用系統(tǒng)功能??捎眯怨芾硐道蠋熤灰褂梦覀兘M另一個成員開發(fā)的應(yīng)用程序,就可以進入登錄界面,登錄成功即可使用系統(tǒng)功能??煽啃钥苫謴?fù)性如果系統(tǒng)在特殊時刻崩潰,為了使系統(tǒng)繼續(xù)運作,需要恢復(fù)之前的備份數(shù)據(jù)。2.性能管理老師希望訪問系統(tǒng)時,能快速的進入操作界面。因此服務(wù)器pc在啟動時就啟動sql服務(wù)器是關(guān)鍵??芍С中怨芾砝蠋熆筛鶕?jù)具體情況增加綠化區(qū)域,樹的種類等操作開發(fā)約束此系統(tǒng)我們采用c#.net開發(fā),因為采用c#.net開發(fā)效率高,系統(tǒng)也易于維護。接口硬件接口打印機軟件接口C#.net統(tǒng)一的數(shù)據(jù)庫接口,采用此接口可連接和操作數(shù)據(jù)庫。C#.net的控件接口。應(yīng)用的領(lǐng)域規(guī)則ID規(guī)則規(guī)則1數(shù)據(jù)庫中每一課樹的id是不能為空而且不能與其他樹木的id重復(fù)的,因為這是這課樹木區(qū)別于其他樹木的標志。規(guī)則2每個綠化帶都有存儲的樹木上限,這個綠化帶所有樹木不能超過此上限法律問題此系統(tǒng)為學(xué)校內(nèi)部管理使用,并沒有作為產(chǎn)品發(fā)布,故不存在版權(quán)費用問題。3.3系統(tǒng)總體設(shè)計圖系統(tǒng)分為兩部分設(shè)計和開發(fā),兩部分是密切聯(lián)系的,詳細的設(shè)計圖如下:圖3-1系統(tǒng)總體設(shè)計圖3.4本章小結(jié)本章主要介紹了系統(tǒng)設(shè)計的用例圖,補充規(guī)約及系統(tǒng)總體的詳細設(shè)計圖。為后續(xù)章節(jié)的各模塊詳細設(shè)計奠定了基礎(chǔ)。4系統(tǒng)開發(fā)4.1web服務(wù)的開發(fā)Webservices是建立可互操作的分布式應(yīng)用程序的新平臺。作為一個Windows程序員,你可能已經(jīng)用COM或DCOM建立過基于組件的分布式應(yīng)用程序。COM是一個非常好的組件技術(shù),但是我們也很容易舉出COM并不能滿足要求的情況。Webservice平臺是一套標準,它定義了應(yīng)用程序如何在Web上實現(xiàn)互操作性。你可以用任何你喜歡的語言,在任何你喜歡的平臺上寫Webservice,只要我們可以通過Webservice標準對這些服務(wù)進行查詢和訪問。下面我們將對本課題的這個網(wǎng)絡(luò)類的接口設(shè)計做詳細的介紹。4.1.1系統(tǒng)管理員本課題中,設(shè)計了三個供應(yīng)用程序使用的管理系統(tǒng)管理員和管理員登錄驗證的接口函數(shù)。publicboollogin(stringuser,stringpwd,stringsqlcmdtable):此函數(shù)用于程序登錄系統(tǒng)驗證身份時調(diào)用,user為用戶名,pwd為密碼,sqlcmdtable為用戶要登錄的模塊的用戶表格。此函數(shù)的關(guān)鍵在于如何實現(xiàn)區(qū)分模塊的管理員還有驗證返回結(jié)果。代碼實現(xiàn)如下:publicboollogin(stringuser,stringpwd,stringsqlcmdtable){boolsingle1=false,single2=false;using(SqlConnectionmyconnection=newSqlConnection()){myconnection.ConnectionString=this.sqlconnection();myconnection.Open();SqlCommandcmd=newSqlCommand();cmd.Connection=myconnection;cmd.CommandText=@"SELECT[user]FROM"+sqlcmdtable;//根據(jù)傳進來的參數(shù)查詢相應(yīng)管理員表格cmd.CommandType=CommandType.Text;SqlDataAdapteradapter=newSqlDataAdapter(cmd);DataTabletmptable=newDataTable();adapter.Fill(tmptable);for(inti=0;i<tmptable.Rows.Count;i++){if(user==tmptable.Rows[i].ItemArray.GetValue(0).ToString().Trim()){single1=true;//如果存在此管理員,置信號為true以便下面根據(jù)此信號繼續(xù)驗證密碼break;}}if(single1){cmd=newSqlCommand(@"SELECTpwdFROM"+sqlcmdtable,myconnection);adapter=newSqlDataAdapter(cmd);adapter.Fill(tmptable);for(inti=0;i<tmptable.Rows.Count;i++){if(pwd==tmptable.Rows[i].ItemArray.GetValue(0).ToString().Trim()){single2=true;//如果密碼正確,置此信號為true,以便返回結(jié)果break;}}}this.sql_release();//釋放所有的連接/*根據(jù)上面的查詢結(jié)果返回驗證結(jié)果*/if(single2)returntrue;elsereturnfalse;}}publicbooladduser(stringuser,stringpwd,stringsqlcmdtable):此函數(shù)用于增加系統(tǒng)管理員,參數(shù)user為要增加的管理員用戶名,pwd為要增加的管理員密碼,sqlcmdtable用于區(qū)分模塊管理員,因為系統(tǒng)有三大模塊,每一模塊的管理員各自存在不同的表格,因此設(shè)此參數(shù)以區(qū)分模塊的管理員。核心代碼如下:SqlCommandcmd=newSqlCommand();cmd.Connection=myconnection;cmd.CommandText=@"INSERTINTO"+sqlcmdtable+@"(user,pwd)VALUES('"+user+"','"+pwd+"')";//數(shù)據(jù)庫語句,向所要求的管理員表格插入一行數(shù)據(jù)cmd.CommandType=CommandType.Text;try{cmd.ExecuteNonQuery();}catch(Exception){/*如果用戶已經(jīng)存在,則更新其信息*/cmd.CommandText=@"UPDATE"+sqlcmdtable+@"SETpwd='"+pwd+@"'WHERE(user='"+user+@"')";cmd.ExecuteNonQuery();this.sql_release();returnfalse;}this.sql_release();returntrue;publicintdeleteuser(stringuser,stringpwd,stringsqlcmdtable):此函數(shù)用于刪除系統(tǒng)管理員,參數(shù)user為要刪除的管理員,pwd為該管理員密碼,sqlcmdtable為模塊的管理員表格,此參數(shù)類似于驗證和增加中的同名參數(shù)。核心代碼如下:SqlCommandcmd=newSqlCommand();cmd.Connection=myconnection;cmd.CommandText=@"SELECTpwdFROM"+sqlcmdtable+@"WHERE(user='"+user+@"')";//先取出指定用戶名的密碼cmd.CommandType=CommandType.Text;SqlDataAdaptertmpadapter=newSqlDataAdapter(cmd);DataTabletmpdt=newDataTable();tmpadapter.Fill(tmpdt);try{stringtmpstr=tmpdt.Rows[0].ItemArray.GetValue(0).ToString();if(tmpstr==pwd)//如果密碼與密碼參數(shù)相同則執(zhí)行刪除操作{cmd.CommandText=@"DELETEFROM"+sqlcmdtable+@"WHERE(user='"+user+@"')";cmd.ExecuteNonQuery();this.sql_release();return1;//刪除成功}}catch(Exception){this.sql_release();return2;//無此用戶}}this.sql_release();return0;//密碼不正確4.1.2查詢本模塊設(shè)計了一個函數(shù)供客戶端應(yīng)用程序查詢使用。此函數(shù)為publicDataSetselectds(stringtablenameandcondition),參數(shù)tablenameandcondition為查詢條件,只要應(yīng)用程序端傳入此參數(shù),就能得到相應(yīng)的數(shù)據(jù)集。此函數(shù)核心代碼如下:publicDataSetselectds(stringtablenameandcondition){using(SqlConnectionmyconn=newSqlConnection()){myconn.ConnectionString=this.sqlconnection();myconn.Open();SqlCommandcmd=newSqlCommand(@"SELECT*FROM"+tablenameandcondition,myconn);SqlDataAdaptertmpadapter=newSqlDataAdapter(cmd);DataSettmpds=newDataSet();tmpadapter.Fill(tmpds);this.sql_release();returntmpds;}}此函數(shù)這樣設(shè)計可實現(xiàn)模糊查詢,因為查詢條件是客戶端傳過來的,需要的條件,在客戶端的應(yīng)用程序首先處理好然后以字符串的形式傳過來,就能得到相應(yīng)的數(shù)據(jù)集,只用一個函數(shù)實現(xiàn)此功能代碼上可簡潔許多。4.1.3數(shù)據(jù)更新此模塊的設(shè)計是整個系統(tǒng)的重點,涉及到綠化信息、綠化種類、綠化區(qū)域的錄入、更新和刪除,此模塊共設(shè)計了八個函數(shù),分別是更新主表Table1的信息:updatetable1();更新種類存儲表格Table2的信息:updatetable2_properties_alter()、updatetable2_kind_add()和publicboolupdatetable2_kind_delete();增加或刪除綠化區(qū)域:updatetable4_area_add()和updatetable4_area_delete();死亡樹木的備份:updatebackup_tree_deleted_Table()和deletetree_Table1()。下面將對這八個函數(shù)作詳細的解析。publicintupdatetable1(stringid,stringguanfu,stringarea,stringprice,stringyear,stringmonth,stringday,stringkind,stringstandard_scale,stringunit_scale,stringvalue,stringremark):此函數(shù)功能為更新主表的綠化信息,各個參數(shù)依次為主表中各個屬性字段的值,以字符串的形式傳遞,此函數(shù)返回值有有個,1表示要錄入的樹的種類并沒有在數(shù)據(jù)庫中,需要先增加該種類的樹,2表示要錄入的樹的區(qū)域不存在,需要先增加新區(qū)域或重新選擇區(qū)域,3表示數(shù)據(jù)錄入的格式不對,4表示要錄入的樹存在,并且信息更新成功,5表示樹錄入成功。核心代碼如下:SqlDataAdaptertmpadapter=newSqlDataAdapter(@"SELECTkindFROMTable2",mycon);DataTabletmptable=newDataTable();if(kindx!="NULL"&&kind.Length!=0){tmpadapter.Fill(tmptable);for(inti=0;i<tmptable.Rows.Count;i++){if(kind==tmptable.Rows[i].ItemArray.GetValue(0).ToString().Trim()){x=true;break;}}if(!x){this.sql_release();return1;//數(shù)據(jù)庫沒有存此種類}}x=false;if(areax!="NULL"&&area.Length!=0){tmpadapter=newSqlDataAdapter(@"SELECTareaFROMTable4",mycon);tmptable=newDataTable();tmpadapter.Fill(tmptable);for(inti=0;i<tmptable.Rows.Count;i++){if(area==tmptable.Rows[i].ItemArray.GetValue(0).ToString().Trim()){x=true;break;}}if(!x){this.sql_release();return2;//數(shù)據(jù)庫中不存在此區(qū)域}}x=false;SqlCommandcmd;tmpadapter=newSqlDataAdapter(@"SELECT[standardofscale]FROMjudge_standard_Table",mycon);tmptable=newDataTable();tmpadapter.Fill(tmptable);for(inti=0;i<tmptable.Rows.Count;i++){if(standard_scale==tmptable.Rows[i].ItemArray.GetValue(0).ToString().Trim()&&standard_scalex!="NULL"){x=true;break;}}if(!x){cmd=newSqlCommand(@"INSERTINTOjudge_standard_Table([standardofscale])VALUES('"+standard_scale+@"')",mycon);cmd.ExecuteNonQuery();}cmd=newSqlCommand(@"INSERTINTOTable1(id,area,[yearofplanting],[monthofplanting],[dayofplanting],[standardofscale],[unitofscale],value,[guanfu],[priceofbuy],kind,remark)VALUES("+idx+@","+areax+@","+yearx+@","+monthx+@","+dayx+@","+standard_scalex+@","+unit_scalex+@","+valuex+@","+guanfux+@","+pricex+@","+kindx+@","+remarkx+@")",mycon);if(id.Length!=0){try{cmd.ExecuteNonQuery();}catch(Exception){try{cmd=newSqlCommand(@"UPDATETable1SETarea="+areax+@","+@"[yearofplanting]="+yearx+@","+@"[monthofplanting]="+monthx+@","+@"[dayofplanting]="+dayx+@","+@"[standardofscale]="+standard_scalex+@","+@"[unitofscale]="+unit_scalex+@","+@"value="+valuex+","+@"[guanfu]="+guanfux+","+@"[priceofbuy]="+pricex+","+@"kind="+kindx+","+@"remark="+remarkx+@"WHERE(id="+idx+@")",mycon);cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();return3;//數(shù)據(jù)格式不對}this.sql_release();return4;//更新成功}}else{this.sql_release();return0;//id號為空}this.sql_release();return5;//插入成功publicbooldeletetree_Table1(stringid):刪除主表中的樹,參數(shù)id為要刪除的樹的id,核心算法如下:SqlCommandcmd=newSqlCommand(@"DELETEFROMTable1WHEREid='"+id+@"'",mycon);try{cmd.ExecuteNonQuery();this.sql_release();returntrue;}catch(Exception){this.sql_release();returnfalse;}publicboolupdatetable2_properties_alter(stringkind,stringproperty,stringvalue):此函數(shù)功能在于更新種類樹表格的屬性值,參數(shù)kind為要更新的樹的種類,property為要更新的屬性,value為值。核心代碼如下:SqlCommandcmd=newSqlCommand(@"UPDATETable2SET"+property+@"='"+value+@"'WHERE(kind='"+kind+@"')",mycon);//數(shù)據(jù)庫語句,將信息更新至屬性表格try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}this.sql_release();returntrue;publicboolupdatetable2_kind_add(stringkind):此函數(shù)用于增加種類樹,參數(shù)kind為要增加的種類樹,此函數(shù)算法與更新屬性的函數(shù)算法大同小異在此不再多做解釋,核心代碼如下:SqlCommandcmd=newSqlCommand(@"INSERTINTOTable2(kind)VALUES('"+kind+@"')",mycon);try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}this.sql_release();returntrue;publicboolupdatetable2_kind_delete(stringkind):此函數(shù)用于刪除種類樹,kind為要刪除的樹的種類,此函數(shù)算法設(shè)計方面,關(guān)鍵在于,要刪除某一種類樹,首先需要先刪除主表中這一種類的所有樹,否則數(shù)據(jù)庫將出現(xiàn)異常,因此算法設(shè)計上需要做兩步刪除,核心算法如下:SqlCommandcmd=newSqlCommand(@"DELETEFROMTable1WHEREkind='"+kind+@"'",mycon);//刪除主表中該種類的所有樹try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}cmd=newSqlCommand(@"DELETEFROMTable2WHEREkind='"+kind+@"'",mycon);//刪除該種類的樹try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}this.sql_release();returntrue;publicboolupdatetable4_area_add(stringarea,stringareaid):此函數(shù)為增加綠化區(qū)域,參數(shù)area為要增加的區(qū)域的區(qū)域名,areaid為區(qū)域的id號,當(dāng)學(xué)校要規(guī)劃多一塊綠化區(qū)域時,這時管理員要向這個區(qū)域增加新的綠化信息時,需要先告訴系統(tǒng)有新的綠化區(qū)域,此時在應(yīng)用程序端設(shè)計了一個模塊在此模塊里調(diào)用此函數(shù),即可向系統(tǒng)增加新的綠化區(qū)域。核心代碼如下:SqlCommandcmd=newSqlCommand(@"INSERTINTOTable4(area,areaid)VALUES('"+area+@"','"+areaid+@"')",mycon);try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}this.sql_release();returntrue;publicboolupdatetable4_area_delete(stringarea):如果學(xué)校的原有的某一塊綠化區(qū)域現(xiàn)在要做別的用途,那么此時需要在系統(tǒng)中清除該綠化區(qū)域的所有信息及該區(qū)域,這時,應(yīng)用程序端只要調(diào)用此函數(shù)便可刪除該綠化區(qū)域及該區(qū)域上的所有綠化信息。該函數(shù)算法關(guān)鍵在于在刪除區(qū)域之前需要先刪除主表中所有有關(guān)該區(qū)域的綠化信息,否則數(shù)據(jù)庫將出現(xiàn)異常,核心算法如下:SqlCommandcmd;cmd=newSqlCommand(@"DELETEFROMTable1WHEREarea='"+area+@"'",mycon);//刪除主表中所有有關(guān)該區(qū)域的綠化信息try{cmd.ExecuteNonQuery();}catch(Exception){}cmd=newSqlCommand(@"DELETEFROMTable4WHEREarea='"+area+@"'",mycon);//刪除該綠化區(qū)域try{cmd.ExecuteNonQuery();}catch(Exception){this.sql_release();returnfalse;}this.sql_release();returntrue;publicboolupdatebackup_tree_deleted_Table(stringid,stringarea,stringyear,stringmonth,stringday,stringstandard_scale,stringunit_scale,stringvalue,stringguanfu,stringprice,stringkind,stringremark):當(dāng)主表中有綠化信息被刪除時,需要提示是否備份該綠化信息,此函數(shù)就是用于備份被刪除的綠化信息的,各參數(shù)分別代表備份表格中各個屬性字段的值,備份表格中的主鍵值由系統(tǒng)自動生成。此函數(shù)主要算法在于要先判斷該表格中數(shù)據(jù)的函數(shù),然后自動生成主鍵值,然后再將各字段插入數(shù)據(jù)表格中,核心算法如下:SqlCommandcmd=newSqlCommand(@"SELECT*FROMbackup_tree_deleted_Table",mycon);//查詢表格中數(shù)據(jù)SqlDataAdapteradapter=newSqlDataAdapter(cmd);DataTablemytable=newDataTable();adapter.Fill(mytable);inttmp=mytable.Rows.Count+1;//根據(jù)表格中數(shù)據(jù)的行數(shù)加1作為主鍵值cmd=newSqlCommand(@"INSERTINTObackup_tree_deleted_Table(number,id,area,[yearofplanting],[monthofplanting],[dayofplanting],[dateofdeath],[standardofscale],[unitofscale],value,[guanfu],[priceofbuy],kind,remark)VALUES('"+tmp.ToString().Trim()+@"','"+id+@"',"+area+@","+year+@","+month+@","+day+@",'"+System.DateTime.Now.ToString().Trim()+@"',"+standard_scale+@","+unit_scale+@","+value+@","+guanfu+@","+price+@","+kind+@","+remark+@")",mycon);//插入移除的綠化信息的各個屬性值

溫馨提示

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

評論

0/150

提交評論