【正文】
XML 的支持也為 XML 成為 Microsoft .NET 中數(shù)據(jù)交換的統(tǒng)一格式提供了基礎(chǔ)。不管數(shù)據(jù)來源于一個關(guān)系型的數(shù)據(jù)庫,還是來源于一個 XML 文檔,我們都可以用一個統(tǒng)一的編程模型來創(chuàng)建和使用它。 另外, ADO .NET 中還引入了一些新的對象,例如 DataReader 可以用來高效率的讀取數(shù)據(jù),產(chǎn)生一個只讀的記錄集等等。 ASP .NET 是 Microsoft .NET 中的網(wǎng)絡(luò)編程結(jié)構(gòu),它使得建造、運(yùn)行和發(fā)布網(wǎng)絡(luò)應(yīng)用非常方便和高效 [9]。 SQL Server 2020 具有較好的可伸縮性和可靠性,提供了以 Web 標(biāo)準(zhǔn)為基礎(chǔ)的擴(kuò)展數(shù)據(jù)庫編程功能,可以滿足電子商務(wù)和企業(yè)應(yīng)用程序的要求。由于 與 SQL Server 2020 都是由微軟公司出品的,所以在 應(yīng)用于后臺程序中,有專門針對 SQL Server 2020 的數(shù)據(jù)應(yīng)用類 庫供用戶使用,方便了用戶對數(shù)據(jù)的操作 [10]。由于 Visual Studio .NET 通過提供一個統(tǒng)一的集成開發(fā)環(huán)境及工具,大大提高了開發(fā)者的效率;十分方便 .NET程序的創(chuàng)建和調(diào)試,所以 Visual 是開發(fā) 應(yīng)用程序的常用工具。當(dāng)用 Visual 創(chuàng)建一個 工程時, Visual 會自動配置好 IIS 應(yīng)用,用戶直接應(yīng)用即可 [11]。如果用戶要查詢某一條線路或站點(diǎn),直接就可以用 該系統(tǒng)相對應(yīng)的功能 。 系統(tǒng)功能:在該系統(tǒng)中,主要提供了以下幾種功能:查詢車站信息、車次信息、站點(diǎn)信息和站站信息功能,信息留言和系統(tǒng)管理功能。 總體設(shè)計 為了保證系統(tǒng)能長期、安全、穩(wěn)定、可靠、效率的運(yùn)行,城市公交查詢系統(tǒng)的設(shè)計主要 包含 下列功能。用戶還可以在留言簿中直接進(jìn)行留言,留言內(nèi)容可以是對線路的詢問,也可以對系統(tǒng)的不足地方提出用戶自己的見解。他還負(fù)責(zé)管理用戶的留言信息,通過對留言信息的審核,然后來判斷對留言信息是進(jìn)行回復(fù)還是刪除操作。 7 圖 下面對各個模塊進(jìn)行描述: 用戶查詢模塊 在用戶查詢模塊中,主要是查詢出用戶自己所需要的線路信息,這也是整個系統(tǒng)最主要的功能模塊。 (2)查詢站點(diǎn)信息:輸入要查詢的站點(diǎn)進(jìn)行搜索,可以查詢出于它相應(yīng)的車次名、發(fā)車時間、收車時間和車次描述信息。 (3)查詢車站信息:選擇要查詢的車站進(jìn) 行搜索,可以查詢出于它相應(yīng)的車次名、發(fā)車時間、收車時間和車次描述信息 (4)查詢站站信息:輸入要查詢的起始站和終點(diǎn)站進(jìn)行搜索,可以查詢出于它相應(yīng)的乘車路線。主要包括: (1)管理員登錄。在留言簿管 8 理中,它還含有一個搜索引擎,主要功能是管理員可以通過它搜索想要查詢的留言主題,這樣可以快速的找出某一主題并對它進(jìn)行回復(fù)或刪除等操作。而且它們各自都含有一個搜索引擎,這樣可以快速的查詢出你想要修改的站點(diǎn)或車次等信息,此搜索引擎采用的是模糊查找。 系統(tǒng)流程設(shè)計 在城市公交查詢系統(tǒng)中,其核心內(nèi)容就是公交查詢的實(shí)現(xiàn)。其中包括車次查詢、站點(diǎn)查詢、站站查詢和車站查詢功能。其中站站查詢是此系統(tǒng)中最重要的功能。流程如圖 所示。其中正向搜索線路的流程如圖 所示。此系統(tǒng)使用的數(shù)據(jù)庫名稱為 mybus,下面具體講解數(shù)據(jù)庫中各數(shù)據(jù)表的創(chuàng)建。 ( 1) 、 管理員表 admin 此表包括三個字段:一個是管理員標(biāo)志 adminid 字段,該字段時 admin 表的主鍵;另外兩個分別是管理員名和管理員密碼。 表 admin表 列名 數(shù)據(jù) 類型 長度 是否為空 說明 adminid Int 4 Not null 管理員編號(主鍵) adname Varchar 15 Not null 管理員名 adpwd Varchar 15 Not null 管理員密碼 ( 2) 、 留言簿表 info 此表包括四個字段:其中 infoID 字段為 info 表的主鍵,另外三個分別為留言標(biāo)題、留言者名、留言內(nèi)容。 表 info表 列名 數(shù)據(jù)類型 長度 是否為空 說明 Infoid Int 4 Not null 留言編號(主鍵) Title Varchar 50 Null 留言標(biāo)題 Name Varchar 50 Null 留言者 (含管理員 )名 Letter Varchar 350 Null 留言內(nèi)容 ( 3) 、 車次基本信息表 line 此表包括五個字段:其中 lineid 字段為 line 表的主鍵,另外四個分別為車次名、發(fā)車時間、收車時間和車次描述。 表 line 表 列名 數(shù)據(jù)類型 長度 是否為空 說明 lineid Int 4 Not null 車次編號 liname Varchar 50 Not null 車次名(主鍵) starttime Varchar 50 Not null 發(fā)車時間 endtime Varchar 50 Not null 收車時間 Lides Varchar 300 Not null 車次描述 ( 4) 、 站點(diǎn)基本信息表 site 此表包括三個字段:其中 siteid 字段為 site 表的主鍵,另外兩個分別為站點(diǎn)名和站點(diǎn)描述。 表 site 表 列名 數(shù)據(jù)類型 長度 是否為空 說明 Siteid Int 4 Not null 站點(diǎn)編號 sitename Varchar 50 Not null 站點(diǎn)名(主鍵) Sides Varchar 50 Not null 站點(diǎn)描述 11 ( 5) 、 站點(diǎn)次序表 sili 此表包括四個字段:其中 sitename 字段和 number 字段為 sili 表的復(fù)合主鍵,另外三個為站點(diǎn)名、線路名和站點(diǎn)次序。 表 sili 表 列名 數(shù)據(jù)類型 長度 是否為空 說明 Siliid Int 4 Not null 站點(diǎn)次序編號 sitename Varchar 50 Not null 站點(diǎn)名(主 鍵) liname Varchar 50 Not null 車次名(主鍵) number Int 4 Not null 站點(diǎn)次序 數(shù)據(jù)庫的連接 在創(chuàng)建完成一個 應(yīng)用程序的時候, VS 會創(chuàng)建一個 文件。在 文件中可,項(xiàng)目應(yīng)用的所有配置信息都包含在 configuration和 /configuration標(biāo)記之間,另外,可以在appSettings標(biāo)記中,使用 add.../標(biāo)記中定義 0到多個設(shè)置 [14]。 ( 3)車次基本信息(如圖 ):包括車次 ID,車次名,發(fā)車時間,收車時間,車次描述。 ( 5)站點(diǎn)次序信息(如圖 ) :包 括站點(diǎn)次序 ID,站點(diǎn)名,車次名,站點(diǎn)次序。 留 言 簿 表留 言 標(biāo) 題 留 言 者 留 言 內(nèi) 容留 言 簿 I D 圖 ER圖 12 包括留言簿 ID,留言標(biāo)題,留言者,留言內(nèi)容。 站 點(diǎn) 表站 點(diǎn) I D 站 點(diǎn) 描 述站 點(diǎn) 名 圖 ER圖 包括站點(diǎn) ID,站點(diǎn)名,站點(diǎn)描述。 在了解了各實(shí)體之后,下面實(shí)現(xiàn)的是站點(diǎn)次序表、站點(diǎn)表、車次表之間的ER 關(guān)系模型圖。 站 點(diǎn) 次 序查 詢車 次站 點(diǎn)1M N 圖 、站點(diǎn)表和車次 表間的 ER圖 下面是添加實(shí)例的 ER 圖,如圖 : 13 圖 系統(tǒng)整體 ER圖 其中管理員跟留言簿的關(guān)系為 M: N ,管理員跟站點(diǎn)次序的關(guān)系為M:N,管理員跟車次的關(guān)系為M:N,管理員跟站點(diǎn)的管理為M:N。 存儲過程是由一些 SQL 語句和控制語句組成的被封裝起來的過程,它駐留在數(shù)據(jù)庫中,可以被客戶應(yīng)用程序調(diào)用,也可以從另一個過程或觸發(fā)器調(diào)用。與應(yīng)用程序中的函數(shù)過程類似,存儲過程可以通過名字來調(diào)用,而且它們 同樣有輸入?yún)?shù)和輸出參數(shù)。 修改站點(diǎn)次序信息的存儲過程 存儲過程的作用是根據(jù)輸入的新信息來更新站點(diǎn)的次序信息,應(yīng)用在 中。前臺主要為滿足 訪客 查詢公交路線的需求;后臺的管理功能為了方便管理者修改、添加、刪除公交路線,回復(fù)、刪除 訪客 留言。 首頁頁面 首頁主要是系統(tǒng)的窗口,通常顯示的信息最多、結(jié)構(gòu)也最復(fù)雜。其中有四個用戶控件,它們分別是:、 、 和 。 (控件開發(fā)) 如圖 所示。如圖 。如圖 。如圖 。如圖 所示。如圖 圖 訪客留言頁面 最新動態(tài) 最新動態(tài)的主要功能是 告訴廣大乘客關(guān)于公交車的一些新的變動以及乘坐 18 公交車的一些守則。 圖 最新動態(tài)頁面 后臺 功能 實(shí)現(xiàn) 后臺功能實(shí)現(xiàn)主要分為:管理員登陸、留言管理、站點(diǎn)管理、車次管理等內(nèi)容。如圖 所示。在此頁面中,還加了一個搜索引擎,以方便管理員搜索某個具體的站點(diǎn)信息。 圖 站點(diǎn)管理頁面 留言管理 留言管理的主要功能是對訪客的留言進(jìn)行刪除、回復(fù)等 操作。如圖 所示。如圖 所示。如圖 所示。該系統(tǒng)主要實(shí)現(xiàn)了對車次、站點(diǎn)、站站、車站的查詢;在系統(tǒng)管理中,實(shí)現(xiàn)了對車次、站點(diǎn)基本信息、站點(diǎn)次序信息和留言簿信息的管理。 通過自己對這次畢業(yè)設(shè)計的完成,我感覺自己學(xué)會了好多知識,最重要的是自己對所學(xué)習(xí)的專業(yè)有了更加深刻的認(rèn)識。另外頁面的美化 也是一個重要的問題,系統(tǒng)的頁面做的過于粗糙,而且功能有些簡陋。 同時我也會在以后的學(xué)習(xí)和工作中加以改進(jìn),爭取給大家更好的公交查詢系統(tǒng)。陳老師 對我順利完成本課題起到了極大的作用,在此向她 表示我最衷心的感謝! 同時也要感謝我的同學(xué)和朋友,他們 在我遇到難題是給予我很大的支持和幫助。 [2] 蔣培,王笑梅 著 . Web 程序設(shè)計 .清華大學(xué)出版社 . 2020 [3] 朱曄 著 . 第一步 —— 基于 C和 社 .2020 [4] Fritz Onion 著 . 基礎(chǔ)教程 .清華大學(xué)出版 社 .2020。 [8] 哈特 著 .孟憲瑞,易磊 譯 . 經(jīng)典教程 —— C篇 .人民郵電出版社 . 2020 [9] David Sceppa 著 . 梁超 , 張莉 , 賀堃 譯 . 技術(shù)內(nèi)幕 .清華大學(xué)出版社 .2020 [10] 胡百敬 , 姚巧玫 著 .SQL Server 2020 數(shù)據(jù)庫開發(fā)詳解 .電子工業(yè)出版社 .2020 [11] Jason Beres 著 .袁鵬飛 譯 . 21天學(xué)通 Visual 版社 .2020 [12] 明日科技 . 數(shù)據(jù)庫系統(tǒng)開發(fā)案例精選 .人民郵電出版社 . 2020 [13] 金銀秋 著 .數(shù)據(jù)庫原理與設(shè)計 .北京 :科學(xué)出版社 ,2020 [14] 劉乃麗 著 . 精通 +SQL Server 2020 項(xiàng)目開發(fā) .人民郵電出版社 . 2020 [15] 譚振林 著 . 道不遠(yuǎn)人 —— 深入解析 控件開發(fā) .電子工業(yè)出版社 . 2020 24 附錄 Dynamic Web Service Selection for ReliableWeb Service Composition SanYih Hwang, Member, IEEE Computer Society, EePeng Lim, Senior Member, IEEE, ChienHsiang Lee, and ChengHung Chen Abstract—This paper studies the dynamic Web service selection problem in a failureprone environment, which aims to determine a subset of Web services to be invoked at runtime so as to successfully orchestrate a posite Web service. We observe that both the posite and constituent Web services often constrain the sequences of invoking their operations and, therefore, we propose using a finite state machine to model the permitted invocation sequences of Web service operations. We assign each state of execution an aggregated reliability to measure the probability that the given state will lead to successful execution in the context where each Web service may fail with some probability. We show that the putation of aggregated reliabilities is equivalent to eigenvector putation and adopt the power method to efficiently derive aggregated reliabilities. In orchestrati