版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、分類號:TP312 UDC :D10621-408-(2007)5798-0密 級:公開 編號:畢業(yè)論文基于.NET的城市公交查詢系統(tǒng)的設計與實現(xiàn)論文作者姓名:申請學位專業(yè):申請學位類別:指導教師(職稱):論文提交日期:4基于.NET的城市公交查詢系統(tǒng)的設計與實現(xiàn)摘 要隨著Internet的快速發(fā)展,互聯(lián)網(wǎng)已成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,顯然它已成為社會生活的一部分。但我國的城市公交信息查詢卻還處于比較落后的水平上,廣大的市民獲取路線信息方式也比較少,最常用的方式只局限在詢問和交通地圖上。而城市公交查詢系統(tǒng)就是使人們能夠在因特網(wǎng)上方便、簡單的查詢出各條路線,了解自己所經(jīng)過的每個站
2、點等信息,以便能更好的制定自己的行動計劃而設計的。它主要實現(xiàn)的模塊是公交信息的查詢模塊,其中包括的功能有:線路查詢、站點查詢、站站查詢、車站查詢;而系統(tǒng)管理模塊主要實現(xiàn)的是對各個數(shù)據(jù)表進行添加、編輯、刪除等功能操作以及對留言版進行一些相應的回復。城市公交查詢系統(tǒng)開發(fā)技術采用的是基于.NET的B/S架構,它的前端選用ASP.NET為主要的編程框架,其.ASPX文件包含組成用戶界面的 HTML 文本和控件,而后臺選用了C#編程語言。用.NET編程的最大好處在于易于管理和重用性比較高。數(shù)據(jù)庫選用的是SQL Server 2000,而應用程序通過ADO.NET與SQL Server 2000數(shù)據(jù)庫建立
3、鏈接,并且運用SQL 語言實現(xiàn)對其數(shù)據(jù)庫進行操作。在此系統(tǒng)中,大量采用了存儲過程來對數(shù)據(jù)庫進行操作。關鍵詞:互聯(lián)網(wǎng);城市公交查詢;.NET;存儲過程 The Design and Realization of City Bus Inquiry System Based on .NETAbstractWith the rapid development of Internet, the Internet has become an important channel of people acquiring, publishing and transmitting information and
4、obviously become one part of social life. But China's technology of urban public transport information inquiry is still in a relatively backward level. The numerous citizens have a little access to acquire the information about bus lines. The most common ways are confined to traffic maps or the
5、reference to stranger. And the urban public transport system is designed for people to inquire of all lines in the Internet conveniently and simply and get to know every site that they passed away in order to make their plans more efficiently. The main module of this system is the bus information qu
6、ery module. Its functions include line inquiry, site inquiry, station-to-station inquiry and station inquiry. The system management module mainly realizes the functional operation on adding, editing, deleting of all data tables and responses to the message correspondingly.The development technology
7、of the city bus inquiry system adopt B/S framework based on .NET. Its front-end part uses ASP.NET as the major framework. The .ASPX file contains HTML text and controls which make up of user interface. The back-end chooses C# as its programming language. The greatest benefit of choosing .NET to prog
8、ramming is the easy managements and reusability. Database uses the SQL Server 2000, and the application accesses the database by ADO.NET and uses SQL language to operate the database. The stored procedure is used a lot to operate the database in the system.Key words: Internet; City Bus inquiries; .N
9、ET; Stored Procedure.目 錄論文總頁數(shù):26頁1引言11.1 城市公交查詢系統(tǒng)的前景11.2 城市公交查詢系統(tǒng)的作用22城市公交查詢系統(tǒng)的實現(xiàn)技術和工具22.1 ASP.NET22.1.1 什么是ASP.NET22.1.2 .NET Framework概述22.1.3 ASP.NET的特點32.2 C#42.3 ADO.NET對象操作數(shù)據(jù)庫42.4 SQL Server 200052.5 Microsoft Visual Studio.NET53 城市公交車查詢系統(tǒng)的分析與設計53.1 需求分析53.2 概要設計63.2.1 系統(tǒng)功能描述63.2.2 系統(tǒng)功能模塊劃分63.
10、2.3 系統(tǒng)流程設計83.2.4 系統(tǒng)E-R圖104 數(shù)據(jù)庫結構設計與實現(xiàn)124.1 數(shù)據(jù)表的創(chuàng)建124.2 數(shù)據(jù)庫的連接134.3 存儲過程145 城市公交查詢系統(tǒng)的實現(xiàn)155.1 系統(tǒng)首頁155.2 后臺管理界面186 系統(tǒng)測試236.1 測試用戶查詢模塊236.2 測試系統(tǒng)管理模塊236.3 測試留言簿管理24結 論25參考文獻25致 謝26聲 明271引言當今是一個以網(wǎng)絡為中心的信息化世界,計算機已成為廣大市民不可缺少的工具。由于我國城市化進程的推進,目前城市不斷地在向郊區(qū)延伸,邊緣不斷擴大,和郊區(qū)的邊界甚至開始變得模糊化,城市公交路線不斷地增多,加之眾多公交路線時常調整,目前眾多市民
11、,特別是一些大中型城市的市民,對各條公交路線的信息不清楚或掌握得不準確。并且當今各大城市的家庭轎車相繼增多,使城市交通出現(xiàn)擁堵現(xiàn)象。而公共交通與其它交通方式相比具有人均占用道路少、能源消耗低、運輸成本低、污染相對較小、客運量大,運送效率高等優(yōu)點,它是解決大、中城市交通擁堵等交通問題,所以各大城市都在積極地發(fā)展公共交通的運用。本畢業(yè)設計主要的目的就是實現(xiàn)公交查詢以及信息發(fā)布。本設計的預期成果是:此系統(tǒng)能夠使用戶簡單的查詢出他們自己想要的車次經(jīng)過哪些站點,在哪一站可以轉乘,然后繼續(xù)換乘哪路車;也可以預先知道可以通過哪些車次可以到達目的地。在留言版中可以留下用戶對系統(tǒng)的任何信息或者任何要求,管理員可
12、以通過對留言版信息的解讀對系統(tǒng)進行一系列的修改。1.1 城市公交查詢系統(tǒng)的前景近十幾年來,我國汽車工業(yè)蓬勃發(fā)展,特別是家用轎車的增長。發(fā)展中國家用轎車市場,其規(guī)模與速度必須與城市基礎建設同步,如果一味追求發(fā)展速度,勢必將造成很多大城市嚴重的交通堵塞問題,而且還將給社會帶來一系列不良后果,如加大社會經(jīng)濟成本,增加能源消耗,惡化城市空氣,增加交通事故等等。因此,在發(fā)展我國的汽車工業(yè)的同時要注意到城市公共交通存在的意義和作用,加大國家在公共交通方面的投入,全面規(guī)劃、統(tǒng)籌安排、合理配置、科學管理,使城市道路流暢、方便、安全、有效、可靠。然而,隨著公共交通的快速發(fā)展,會逐漸地出現(xiàn)越來越多的公共汽車和不同
13、的公交路線,這樣會使人們對各條公交路線的信息掌握的不是很清楚。而城市公交查詢系統(tǒng)主要任務就在于對各條路線的信息查詢,和對整個公交線路信息進行相關的管理。使用公交查詢系統(tǒng)人們就可以找出一條最適合于自己的線路,減少不必要的坐車時間。所以城市公交查詢系統(tǒng)的前景非常樂觀?;诔鞘泄徊樵兿到y(tǒng)與傳統(tǒng)的城市公交查詢系統(tǒng)有相似又有區(qū)別。相似之處在于系統(tǒng)的核心都是B/S架構。B/S 架構是不需要專門的操作環(huán)境,在任何地方,只要能上網(wǎng),就能夠操作系統(tǒng)。不同之處在于實現(xiàn)的語言不同,傳統(tǒng)的一般用的語言是ASP+它的腳本語言,是不面向對象的,而基于本設計的城市公交查詢系統(tǒng)用的語言是.NET,是面向對象的,面向對象的編
14、程語言最大的特色就是可以編寫自己所需的數(shù)據(jù)類型。對于傳統(tǒng)的城市公交查詢系統(tǒng)他易于管理,重用性比較高。1.2 城市公交查詢系統(tǒng)的作用首先:有條理地、清晰地呈現(xiàn)出城市各條線路信息。不管城市擴展得有多大,城市公交路線增加的有多少,人們都可以通過城市公交查詢系統(tǒng)來獲得各條公交路線的詳細信息。其次:節(jié)省時間。在日益激烈地競爭環(huán)境中,時間可以說是人們最大的資本。城市公交查詢系統(tǒng)可以為廣大的市民指出一條最適合于他們自己的公交線路,減少不必要的多做車的情況,從而節(jié)省出更多的寶貴時間計劃他們自己的事。最后:消除城郊市民和外來人的不安。初到一個陌生的環(huán)境,特別是一個大城市中,許多人都會感到局促不安。城市公交查詢系
15、統(tǒng)可以使人們了解這個城市的一些基本情況,也可以使人們能夠準確地到達他們自己想要去的地方,減少不必要的坐錯車的情況。2城市公交查詢系統(tǒng)的實現(xiàn)技術和工具2.1 ASP.NET 2.1.1 什么是ASP.NET ASP.NET是M的一部分,ASP.net 是一種建立在公共語言運行庫上的編程框架,可用于在服務器上生成功能強大的Web應用程序。它提供了一個統(tǒng)一的 Web 開發(fā)模型,并為開發(fā)人員提供了創(chuàng)建企業(yè)級 Web 應用程序所需的各種服務。ASP.NET 是一個已編譯的、基于 .NET 的環(huán)境,可以使用任何與 .NET 兼容的語言(包括 Visual Basic .NET、C# 和就Jscript.)
16、創(chuàng)作應用程序。另外,任何 ASP.NET 應用程序都可以完全使用.NET Framework。開發(fā)人員可以方便地獲得這些技術的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。2.1.2 .NET Framework概述 .NET Framework 是支持生成和運行下一代應用程序和 XML Web services 的內部 Windows 組件。.NET Framework的幾個主要組成部分:首先是整個開發(fā)框架的基礎,即通用語言運行時以及它所提供的一組基礎類庫;在開發(fā)技術方面,.NET提供了全新的數(shù)據(jù)庫訪問技術ADO .NET,以及網(wǎng)絡應用開發(fā)技術ASP .NET和Windows編
17、程技術Win Forms;在開發(fā)語言方面,.NET提供了VB、VC+、C#、 Jscript等多種語言支持;而Visual Studio .NET則是全面支持.NET的開發(fā)工具。.NET Framework 主要實現(xiàn)下列目標: (1)提供一個一致的面向對象的編程環(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠程執(zhí)行的。(2)提供一個將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。(3)提供一個可提高代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)執(zhí)行安全性的代碼執(zhí)行環(huán)境。(4)提供一個可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)行環(huán)境。使開發(fā)人員
18、的經(jīng)驗在面對類型大不相同的應用程序(如基于Windows 的應用程序和基于 Web 的應用程序)時保持一致。按照工業(yè)標準生成所有通信,以確?;?.NET Framework 的代碼可與任何其他代碼集成。.NET Framework 具有兩個主要組件:公共語言運行庫和 .NET Framework 類庫。公共語言運行庫是 .NET Framework 的基礎。您可以將運行庫看作一個在執(zhí)行時管理代碼的代理,它提供內存管理、線程管理和遠程處理等核心服務,并且還強制實施嚴格的類型安全以及可提高安全性和可靠性的其他形式的代碼準確性。事實上,代碼管理的概念是運行庫的基本原則。以運行庫為目標的代碼稱為托管
19、代碼,而不以運行庫為目標的代碼稱為非托管代碼。.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,您可以使用它開發(fā)多種應用程序,這些應用程序包括傳統(tǒng)的命令行或圖形用戶界面 (GUI) 應用程序,也包括基于 ASP.NET 所提供的最新創(chuàng)新的應用程序(如 Web 窗體和 XML Web services)。.NET Framework 可由非托管組件承載,這些組件將公共語言運行庫加載到它們的進程中并啟動托管代碼的執(zhí)行,從而創(chuàng)建一個可以同時利用托管和非托管功能的軟件環(huán)境。.NET Framework 不但提供若干個運行庫宿主,而且還支持第三方運行庫宿主的
20、開發(fā)。2.1.3 ASP.NET的特點1、ASP.NET的新性能ASP.NET提供了穩(wěn)定的性能、優(yōu)秀的升級性、更快速的開發(fā)、更簡便的管理、全新的語言以及網(wǎng)絡服務。貫穿整個ASP.NET的主題就是系統(tǒng)幫用戶做了大部分不重要的瑣碎的工作。2、全新的構造新的ASP.NET引入受管代碼(Managed Code)這樣一個全新概念,橫貫整個視窗開發(fā)平臺。受管代碼在NGWS Runtime下運行,而NGWS Runtime是一個時間運行環(huán)境,它管理代碼的執(zhí)行,使程序設計更為簡便。3、高效率對于一個程序來講,速度是非常重要的。在ASP中為了盡可能精簡程序代碼,以至于不得不將代碼移植到一個低性能的部件中。而A
21、SP.NET則能妥善地解決這一問題。4、易控制在ASP.NET里,你將會擁有一個“Data-Bounds” (數(shù)據(jù)約束),這意味著它會與數(shù)據(jù)源連接,并會自動裝入數(shù)據(jù),使控制工作簡單易行。5、語言支持ASP.NET支持多種語言,支持編譯類語言,支持比如VB、VC+、C#等,它比這些編譯類語言運行速度快,更適合編寫大型應用。6、更好的升級能力快速發(fā)展的分布式應用也需要更快速、更模塊化、更易操作、更多平臺支持和重復利用性更強的開發(fā),需要一種新的技術來適應不同的系統(tǒng),網(wǎng)絡應用和網(wǎng)站需要提供一種更加強大的可升級的服務。ASP.NET能夠適應上面的要求。2.2 C#C#是一種最新的、面向對象的編程語言,是
22、微軟在Microsoft .NET中推出的全新語言。這種全新的面向對象的語言使得開發(fā)者可以快速的構建從底層系統(tǒng)級到高層商業(yè)組件的不同應用。C#在保證了強大的功能和靈活性的同時,給C和C+帶來了類似于VB的快速開發(fā),并且它還針對.NET作了特別設計,比如C#允許XML數(shù)據(jù)直接映射為它的數(shù)據(jù)類型等等,這些特性結合起來使得C#成為優(yōu)秀的下一代網(wǎng)絡編程語言。2.3 ADO.NET對象操作數(shù)據(jù)庫在Microsoft .NET中訪問數(shù)據(jù)庫的技術是ADO .NET。ADO .NET提供了一組用來連接到數(shù)據(jù)庫,運行命令,返回記錄集的類庫,與從前的ADO(ActiveX Data Object)相比,Conne
23、ction和Command對象很類似,而ADO .NET的革新主要體現(xiàn)在如下幾個方面: 首先,ADO .NET提供了對XML的強大支持,這也是ADO .NET的一個主要設計目標。在ADO .NET中通過XMLReader,XMLWriter, XMLNavigator, XMLDocument等可以方便的創(chuàng)建和使用XML數(shù)據(jù),并且支持W3C 的 XSLT、DTD、XDR等標準。ADO .NET對XML的支持也為XML成為Microsoft .NET中數(shù)據(jù)交換的統(tǒng)一格式提供了基礎。 其次,ADO .NET引入了Dataset的概念,這是一個駐于內存的數(shù)據(jù)緩沖區(qū),它提供了數(shù)據(jù)的關系型視圖。不管數(shù)據(jù)
24、來源于一個關系型的數(shù)據(jù)庫,還是來源于一個XML文檔,我們都可以用一個統(tǒng)一的編程模型來創(chuàng)建和使用它。它替代了原有的Recordset的對象,提高了程序的交互性和可擴展性,尤其適合于分布式的應用場合。 另外,ADO .NET中還引入了一些新的對象,例如DataReader可以用來高效率的讀取數(shù)據(jù),產(chǎn)生一個只讀的記錄集等等。簡而言之,ADO .NET通過一系列新的對象和編程模型,并與XML緊密結合,使得在Microsoft .NET中的數(shù)據(jù)操作十分方便和高效。 ASP .NET是Microsoft .NET中的網(wǎng)絡編程結構,它使得建造、運行和發(fā)布網(wǎng)絡應用非常方便和高效。2.4 SQL Server
25、2000SQL Server 2000是Microsoft 公司發(fā)行的關系型數(shù)據(jù)庫管理與分析系統(tǒng),它提供了功能全面、操作簡單的圖形界面。SQL Server 2000具有較好的可伸縮性和可靠性,提供了以Web標準為基礎的擴展數(shù)據(jù)庫編程功能,可以滿足電子商務和企業(yè)應用程序的要求。 SQL Server 2000支持XML和Internet標準,具有基于Web的分析能力,允許使用內置的存儲過程以XML格式存儲、更新、刪除和檢索數(shù)據(jù)。由于ASP.NET與SQL Server 2000都是由微軟公司出品的,所以在ASP.NET應用于后臺程序中,有專門針對SQL Server 2000的數(shù)據(jù)應用類庫供用
26、戶使用,方便了用戶對數(shù)據(jù)的操作。2.5 Microsoft Visual Studio.NETVisual Studio .NET作為微軟的下一代開發(fā)工具,它和.NET 開發(fā)框架緊密結合,是構建下一代互聯(lián)網(wǎng)應用的優(yōu)秀工具。由于Visual Studio .NET通過提供一個統(tǒng)一的集成開發(fā)環(huán)境及工具,大大提高了開發(fā)者的效率;十分方便.NET程序的創(chuàng)建和調試,所以Visual Studio.NET是開發(fā)ASP.NET應用程序的常用工具。在Visual Studio.NET中用戶可以直接使用它里面的組件來創(chuàng)建ASP.NET應用程序,同時它也是一個功能豐富的編程環(huán)境,集成了多種語言支持(如:C#、VC
27、+、VB);簡化了服務器端的開發(fā);提供了高效地創(chuàng)建和使用網(wǎng)絡服務的方法等等。當用Visual Studio.NET創(chuàng)建一個ASP.NET工程時,Visual Studio.NET會自動配置好IIS應用,用戶直接應用即可。3 城市公交車查詢系統(tǒng)的分析與設計 3.1 需求分析在此系統(tǒng)中,用戶可以查詢城市中的各條路線或站點,了解各條路線或站點的詳細信息。如果用戶要查詢某一條線路或站點,直接就可以用該系統(tǒng)相對應的功能。本系統(tǒng)滿足了以下幾個要求:操作的簡易性:城市公交查詢系統(tǒng)使用起來簡單、方便、界面友好,用戶操作起來得心應手。系統(tǒng)功能:在該系統(tǒng)中,主要提供了以下幾種功能:查詢車站信息、車次信息、站點信息
28、和站站信息功能,信息留言和系統(tǒng)管理功能。如:在查詢功能中,用戶輸入要查詢的車次等信息即可得出與它相關的結果;在系統(tǒng)管理功能中,管理員可以對其信息進行添加、編輯和刪除等操作。3.2 概要設計3.2.1 系統(tǒng)功能描述在用戶進入主界面后,就可以通過車次查詢、站點查詢、站站查詢、車站查詢快速地查詢出符合用戶條件的相關線路信息。用戶還可以在留言簿中直接進行留言,留言內容可以是對線路的詢問,也可以對系統(tǒng)的不足地方提出用戶自己的見解。當管理員進入系統(tǒng)后,可以對數(shù)據(jù)庫中的信息進行添加、刪除和編輯等操作。他還負責管理用戶的留言信息,通過對留言信息的審核,然后來判斷對留言信息是進行回復還是刪除操作。3.2.2 系
29、統(tǒng)功能模塊劃分在了解了系統(tǒng)的功能需求后,可以把該系統(tǒng)劃分為以下3個模塊:用戶查詢模塊、留言簿模塊和系統(tǒng)管理模塊如圖3-1。圖3-1城市公交查詢系統(tǒng)功能模塊下面對各個模塊進行描述:1、用戶查詢模塊在用戶查詢模塊中,主要是查詢出用戶自己所需要的線路信息,這也是整個系統(tǒng)最主要的功能模塊。主要包括:(1)查詢車次信息:輸入要查詢的車次進行搜索,可以查詢出于它相應的站點名和站點描述信息。(2)查詢站點信息:輸入要查詢的站點進行搜索,可以查詢出于它相應的車次名、發(fā)車時間、收車時間和車次描述信息。如果用戶不知道站點的全稱,也可以在高級查詢中模糊查詢出含有關鍵字的所有站點信息。(3)查詢車站信息:選擇要查詢的
30、車站進行搜索,可以查詢出于它相應的車次名、發(fā)車時間、收車時間和車次描述信息(4)查詢站站信息:輸入要查詢的起始站和終點站進行搜索,可以查詢出于它相應的乘車路線。2、系統(tǒng)管理模塊在系統(tǒng)管理模塊中,主要是對數(shù)據(jù)庫中的各個表進行管理。主要包括:(1)管理員登錄。(2)留言簿管理:可以對留言簿中的內容進行回復與刪除操作。在留言簿管理中,它還含有一個搜索引擎,主要功能是管理員可以通過它搜索想要查詢的留言主題,這樣可以快速的找出某一主題并對它進行回復或刪除等操作。(3)站點、車次管理:可以對站點、車次基本信息和車次次序信息進行添加、刪除和編輯等操作。而且它們各自都含有一個搜索引擎,這樣可以快速的查詢出你想
31、要修改的站點或車次等信息,此搜索引擎采用的是模糊查找。3、留言簿模塊在留言簿模塊中,用戶可以不需要注冊直接在網(wǎng)上進行留言,也可以對某一特定地留言標題進行回復貨討論,也可以通過留言簿查看自己曾經(jīng)留言過的信息。3.2.3 系統(tǒng)流程設計在城市公交查詢系統(tǒng)中,其核心內容就是公交查詢的實現(xiàn)。在此系統(tǒng)中,即實現(xiàn)用戶查詢模塊中的各個功能信息。其中包括車次查詢、站點查詢、站站查詢和車站查詢功能。此系統(tǒng)中,用戶不需要注冊就可以直接進行相關功能的查詢。其中站站查詢是此系統(tǒng)中最重要的功能。主要流程為:當程序開始時先進入正向搜索,如果正向搜索不存在所需的數(shù)據(jù)再進行反向搜索,如果正反兩方都沒有搜索到所需的數(shù)據(jù)則程序結束
32、。流程如圖3-2所示。圖3-2站站查詢功能流程圖根據(jù)上圖所示,在站站查詢實現(xiàn)的過程中,它是從正反兩個方面對線路進行查詢。其中正向搜索線路的流程如圖3-3所示。圖3-3正向搜索線路流程圖3.2.4 系統(tǒng)E-R圖針對城市公交查詢系統(tǒng)的需求,設計如下面所示的數(shù)據(jù)項和數(shù)據(jù)結構:(1)管理員基本信息(如圖3-4):包括管理員ID,管理員名,管理員秘碼。(2)留言簿基本信息(如圖3-5):包括留言簿ID,留言標題,留言者,留言內容。(3)車次基本信息(如圖3-6):包括車次ID,車次名,發(fā)車時間,收車時間,車次描述。(4)站點基本信息(如圖3-7):包括站點ID,站點名,站點描述。(5)站點次序信息(如圖
33、3-8):包括站點次序ID,站點名,車次名,站點次序。圖3-4管理員基本信息E-R圖圖3-5留言簿基本信息E-R圖圖3-6車次基本信息E-R圖圖3-7站點基本信息E-R圖圖3-8站點次序信息E-R圖在了解了各實體之后,下面實現(xiàn)的是站點次序表、站點表、車次表之間的E-R關系模型圖。站點次序表與站點表之間的關系是一對多的關系,記作1:M,站點次序表與車次表之間的關系也是一對多的關系,記作1:N,如圖3-9所示。圖3-9站點次序表、站點表和車次表間的E-R圖4 數(shù)據(jù)庫結構設計與實現(xiàn)城市公交查詢系統(tǒng)應用的是SQL Server 2000數(shù)據(jù)庫管理系統(tǒng)。此系統(tǒng)使用的數(shù)據(jù)庫名稱為mybus,下面具體講解數(shù)
34、據(jù)庫中各數(shù)據(jù)表的創(chuàng)建。4.1 數(shù)據(jù)表的創(chuàng)建該系統(tǒng)中共需要創(chuàng)建五個數(shù)據(jù)表:管理員表、留言簿表、車次基本信息表、站點基本信息表、站點次序表。(1)管理員表admin此表包括三個字段:一個是管理員標志adminid字段,該字段時admin表的主鍵;另外兩個分別是管理員名和管理員密碼。其詳細信息如表4-1所示。表4-1 admin表列名數(shù)據(jù)類型長度是否為空說明adminidInt4Not null管理員編號(主鍵)adnameVarchar15Not null管理員名adpwdVarchar15Not null管理員密碼(2)留言簿表 info此表包括四個字段:其中infoID字段為info表的主鍵,
35、另外三個分別為留言標題、留言者名、留言內容。其詳細信息如表4-2所示。表4-2 info表列名數(shù)據(jù)類型長度是否為空說明InfoidInt4Not null留言編號(主鍵)TitleVarchar50Null留言標題NameVarchar50Null留言者(含管理員)名LetterVarchar350Null留言內容(3)車次基本信息表 line此表包括五個字段:其中l(wèi)ineid字段為line表的主鍵,另外四個分別為車次名、發(fā)車時間、收車時間和車次描述。其詳細信息如表4-3所示。表4-3 line 表列名數(shù)據(jù)類型長度是否為空說明lineidInt4Not null車次編號linameVarcha
36、r50Not null車次名(主鍵)starttimeVarchar50Not null發(fā)車時間endtimeVarchar50Not null收車時間LidesVarchar300Not null車次描述(4)站點基本信息表 site此表包括三個字段:其中siteid字段為site表的主鍵,另外兩個分別為站點名和站點描述。其詳細信息如表4-4所示。表4-4 site 表列名數(shù)據(jù)類型長度是否為空說明SiteidInt4Not null站點編號sitenameVarchar50Not null站點名(主鍵)SidesVarchar50Not null站點描述(5)站點次序表 sili此表包括四個
37、字段:其中sitename字段和number字段為sili表的復合主鍵,另外三個為站點名、線路名和站點次序。其詳細信息如表3-5所示。表4-5 sili 表列名數(shù)據(jù)類型長度是否為空說明SiliidInt4Not null站點次序編號sitenameVarchar50Not null站點名(主鍵)linameVarchar50Not null車次名(主鍵)numberInt4Not null站點次序4.2 數(shù)據(jù)庫的連接在創(chuàng)建完成一個ASP.NET應用程序的時候,VS會創(chuàng)建一個Web.Config文件。該文件定義和保存了所有ASP.NET應用程序的配置信息,這些配置采用了XML格式,具有較大的可擴
38、展性。在web.config文件中可,項目應用的所有配置信息都包含在<configuration>和</configuration>標記之間,另外,可以在<appSettings>標記中,使用<add./>標記中定義0到多個設置。在本系統(tǒng)中,數(shù)據(jù)庫連接如下:首先:在web.config文件中設置了數(shù)據(jù)庫的連接,下面是部分web.config文件的代碼:<Configuration>/建立數(shù)據(jù)庫連接<appSettings><add key="ConnectionString"Value="
39、;server= (local); database=mybus; uid=sa; pwd="/> </appSettings></Configuration>其中ConnectionString是取得或設置連接數(shù)據(jù)庫的語句;server=(local)表示與數(shù)據(jù)庫相連的是本機;database表示要連的數(shù)據(jù)庫,本系統(tǒng)得數(shù)據(jù)庫為mybus;uid=sa表示數(shù)據(jù)庫的用戶名為sa;pwd 表示連接的數(shù)據(jù)庫的密碼,本系統(tǒng)中為空。其次:在ASP.NET后臺應用中,可以通過ADO.NET的SQL Server數(shù)據(jù)庫接口連接SQL Server數(shù)據(jù)庫。首先要在程序的
40、開頭定義一個using System.Data.SqlClient類庫,定義了它之后才可以應用SQL Server數(shù)據(jù)庫接口。然后再應用程序的Page_Load()事件中,定義了數(shù)據(jù)庫連接的程序應用,其代碼具體如下:using System.Data.SqlClientPrivate void Page_Load (object sender, System.EventArgs e)string source=ConfigurationSettings.AppSettings "ConnectionString"Conn=new SqlConnection (source)
41、;先聲明一個變量獲取配置節(jié)中的配置設置,然后用SqlConnection 打開數(shù)據(jù)庫的一個連接。4.3 存儲過程在城市公交查詢中,大多的數(shù)據(jù)操作都是通過存儲過程來處理的。存儲過程是由一些SQL語句和控制語句組成的被封裝起來的過程,它駐留在數(shù)據(jù)庫中,可以被客戶應用程序調用,也可以從另一個過程或觸發(fā)器調用。它的參數(shù)可以被傳遞和返回。與應用程序中的函數(shù)過程類似,存儲過程可以通過名字來調用,而且它們同樣有輸入?yún)?shù)和輸出參數(shù)。在應用程序中直接調用存儲過程有以下好處:減少網(wǎng)絡通信量、提高系統(tǒng)的運行速度、更強的適應性。1、修改站點次序信息的存儲過程下面的存儲過程的作用是根據(jù)輸入的新信息來更新站點的次序信息,
42、應用在updsite.aspx.cs中,其SQL語句如下:Create procedure updatesilisiliid int,number int,sitename varchar (50),liname varchar (50)AsUpdate siliSetnumber=number,sitename=sitename,liname=linameWheresiliid=siliidGO5 城市公交查詢系統(tǒng)的實現(xiàn)5.1 系統(tǒng)首頁1、首頁界面首頁主要是系統(tǒng)的窗口,通常顯示的信息最多、結構也最復雜。此界面主要是采用表格來制作的,它包括五個部分。其中有四個用戶控件,它們分別是:head1.
43、ascx、head3.ascx、head4.ascx和footer.ascx。head1.ascx主要由頁面的標題,四個工具欄和一個label控件組成;head3.ascx是頁面欄;head4.ascx是快速公告,主要顯示公交車公司發(fā)布的關于交通和公交車的最新信息;footer.ascx主要是顯示此網(wǎng)頁的版權所有者。此界面的具體結構排列如圖5-1所示。圖5-1 首頁界面2、前臺界面實現(xiàn)(default.aspx)(1)下面的代碼定義調用的文件和Form表單。<!-下面代碼是調用head1.ascx、head3.ascx、head4.ascx和footer.ascx用戶控制時需在aspx文
44、件開頭部分添加的語句-><%RegisterTagPrefix="LB"TagName="Header"Src="head4.ascx"%> <%RegisterTagPrefix="L"TagName="Header" Src="head3.ascx"%><%RegisterTagPrefix="T"TagName="Header" Src="head1.ascx"%>&l
45、t;%RegisterTagPrefix="F"TagName="Footer" Src="footer.ascx"%><% Page language="c#” Codebehind="default.aspx.cs"AutoEventWireup="false" Inherits="ni._default" %>.<!-下面代碼表示用戶控件在頁面中的調用和在頁面中的相應位置-><T: HEADER id="head1
46、" runat="server"></T: HEADER><br><L: HEADER id="head3" runat="server"></L: HEADER><br><LB: HEADER id="head4" runat="server"></LB: HEADER><!-下面代碼表示調用Footer.ascx的語句和它在頁面中的位置-<F: Footer id="fo
47、oter" runat="server"></F: Footer>3、后臺應用實現(xiàn)(default.aspx.cs)在default的后臺應用中,主要處理帶著數(shù)據(jù)的頁面的跳轉,其代碼如下:(1)下面代碼定義命名空間和文件中使用的表格表單、相關控件變量聲明等信息。/using表示為本機的數(shù)據(jù)提供類using System.Data.SqlClient;/使用數(shù)據(jù)庫using System.Configuration;/ 在Web.config中聲明的函數(shù)一般是連接數(shù)據(jù)庫的避免了重復直接調用數(shù)據(jù)庫連接namespace ni /命名空間Public
48、class _default: System.Web.UI.Page/相關控件的聲明.Protected System.Web.UI.WebControls.TextBox Sina;Protected System.Web.UI.WebControls.Button Button1;Protected string searchlina="site.aspx?"SqlConnection conn; (2)下面代碼定義了頁面初始化過程中的數(shù)據(jù)應用,首先建立了與數(shù)據(jù)庫的連接/Page_Load事件,無論是訪問者初始瀏覽還是通過單擊按鈕或因為其他事件來再次調用頁面,都會觸發(fā)P
49、age_Load事件中的代碼。Private void Page_Load (object sender, System.EventArgs e)/ 在此處放置用戶代碼以初始化頁面string source=ConfigurationSettings.AppSettings "ConnectionString"/調用在Web.config文件中的數(shù)據(jù)庫連接語句conn=new SqlConnection(source);/打開一個連接 .Private void InitializeComponent () /聲明將要處理事件的方法this.Button1.Click+=
50、newSystem.EventHandler (this.Button1_Click);.this. Load += new System.EventHandler (this.Page_Load);(3)下面定義的代碼表示單擊了按鈕時,就會觸發(fā)相應的事件。Private void Button2_Click (object sender, System.EventArgs e) /此事件中將頁面跳轉到站點查詢的界面中string sna=Sina.Text;/聲明一個變量,并取得文本框中的數(shù)據(jù)url1=searchsite+"sitename="+sna+"&a
51、mp;"/帶參數(shù)的頁面跳轉url1+=""Response.Redirect (url1); .5.2 后臺管理界面在此頁面中,主要實現(xiàn)站點信息管理。在此頁面中,還加了一個搜索引擎,以方便管理員搜索某個具體的站點信息。具體結構排列如圖5-2所示。圖5-2 站點管理界面1、前臺界面實現(xiàn)(updsite.aspx)在前臺界面中主要的控件就是datagrid控件,它是對數(shù)據(jù)表的列進行操作的。它的屬性是true和false。AutoGenerateColumns的默認值為true,則說明它可以自動產(chǎn)生列;當把AutoGenerateColumns的屬性設為falsh是,d
52、atagrid控件提供5種列選擇,分別為 :ButtonColum、BoundColumn、EditCommanDcolumn、HyperLinkColumn、TemplateColumn,它們的都是在<Column></Column>標簽內進行編程的。在此頁面中用來共用了三種選擇,包括ButtonColum、BoundColumn和EditCommanDcolumn,其代碼如下:<asp:datagridid="datagrid1"runat="server"DataKeyField="siliid"
53、OnUpdateCommand="DataGrid_update"OnEditCommand="DataGrid_edit" OnDeleteCommand="DataGrid_delete"OnCancelCommand="DataGrid_cancel" Width="100%" AutoGenerateColumns="False" PageSize="10" AllowPaging="True" OnPageIndexChang
54、ed="DataGrid_Page"BorderColor="#999999" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="3" GridLines="Vertical"><SelectedItemStyleFont-Bold="True"ForeColor="White"BackColor="#cccc
55、ff></SelectedItemStyle><AlternatingItemStyle BackColor="#ffe4ff"></AlternatingItemStyle>/ AlternatingItemStyle為表中偶數(shù)記錄單獨指定的顏色和字體<ItemStyle ForeColor="Black" BackColor="#f1f0f4 "></ItemStyle><HeaderStyle Font-Bold="True" ForeC
56、olor="Black" BackColor="#ffe4ff"></HeaderStyle><FooterStyle ForeColor="Black" BackColor="#ffccff"></FooterStyle><Columns><asp:BoundColumn DataField="siliid" HeaderText="序號"></asp: BoundColumn><asp:B
57、oundColumn DataField="sitename" HeaderText="站點名"></asp: BoundColumn>/通過datagrid控件的BoundColumn性質,可以對數(shù)據(jù)表的列進行操作<asp:BoundColumn DataField="liname" HeaderText="線路名"></asp: BoundColumn><asp:BoundColumn DataField="number" HeaderText
58、="車序"></asp: BoundColumn><asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="編輯"></asp:EditCommandColumn> /EditCommandColumn的具體功能有編輯、更新和取消,它可以實現(xiàn)數(shù)據(jù)的修改<asp:ButtonColumn Text="刪除" Co
59、mmandName="Delete"></asp: ButtonColumn>/通過datagrid控件的ButtonColumn性質,可以在數(shù)據(jù)表中實現(xiàn)Button控件所支持的操作</Columns><PagerStyleHorizontalAlign="Center"ForeColor="Black" BackColor="#ffe4ff" Mode="NumericPages"></PagerStyle>/定義分頁時顯示的類型,其中顯示分頁的模型為數(shù)字,方向是水平方向居中。</asp: datagrid>2、站點管理后臺應用實現(xiàn)(updsite.aspx.cs)(1)下面定義了頁面初始化的應用,其代碼如下:Private void Page Load (object sender, System.EventArgs e)/ 在此處放置用戶代碼以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農貿市場過期食品處理方案
- 2024-2030年中國石家莊房地產(chǎn)市場競爭格局及投資規(guī)劃建議報告
- 2024-2030年中國眼科光學儀器行業(yè)應用趨勢預測及投資策略分析報告
- 農業(yè)企業(yè)知識普及競賽方案
- 商場內墻面粉刷維護施工方案
- 急救中心抗菌藥物應急管理制度
- 在線教育平臺教師績效管理方案
- 社區(qū)衛(wèi)生服務人事管理規(guī)范
- 排水溝施工安全管理方案
- 中學教師教學效果工作總結
- 鈉與水的反應
- 議論文寫作技巧
- 教科版五年級科學上冊(風的作用) 教學課件
- 二年級下冊語文試題 -“詩詞大會”題庫二 (word版有答案) 人教部編版
- GB/T 7702.20-2008煤質顆粒活性炭試驗方法孔容積和比表面積的測定
- 新歷史主義文藝思潮
- GB/T 40120-2021農業(yè)灌溉設備灌溉用熱塑性可折疊軟管技術規(guī)范和試驗方法
- GB/T 3903.2-1994鞋類通用檢驗方法耐磨試驗方法
- GB/T 10801.2-2018絕熱用擠塑聚苯乙烯泡沫塑料(XPS)
- 12J5-1 平屋面建筑標準設計圖
- 中印邊境爭端
評論
0/150
提交評論