freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

酒店點(diǎn)菜系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(周鑫)-資料下載頁

2025-06-30 15:35本頁面
  

【正文】 執(zhí)行代理類。這個類非常重要,重要是因?yàn)樗詈狭擞脩舳说膱?zhí)行操作行為和執(zhí)行的環(huán)境,他持有執(zhí)行操作的所需要的數(shù)據(jù),同時提供管理著執(zhí)行操作依賴的環(huán)境。所以他是一個強(qiáng)耦合的類,也可以看做是個工具類。 JSP 技術(shù)隨著 Inter 的快速發(fā)展,在網(wǎng)頁中通過加入程序來建立動態(tài)響應(yīng)的機(jī)制,成了網(wǎng)頁制作技術(shù)的主要發(fā)展方向。目前,制作動態(tài)交互網(wǎng)頁的 Web 應(yīng)用開發(fā)技術(shù)主要有 3 種:ASP (Active server pages)、PHP (Professional hypertext preprocessor) 和 JSP (Java server pages)。本系統(tǒng)的主要開發(fā)任務(wù)將由使用 JSP 技術(shù)來完成。JSP 是由 Sun Microsystems 公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)16 / 60網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。它為創(chuàng)建動態(tài) Web 應(yīng)用提供了一個簡捷而快速的方法。 JSP 是基于 Java Servlet 以及整個 Java 體系的 Web 開發(fā)技術(shù),利用這一技術(shù)可以建立安全的、跨平臺的先進(jìn)的動態(tài)網(wǎng)站。綜合來講,JSP 的優(yōu)勢表現(xiàn)在以下幾方面:JSP 技術(shù)是基于平臺和服務(wù)器獨(dú)立的;JSP 內(nèi)置支持 XML 技術(shù),使得開發(fā)者能夠定制自己的標(biāo)簽 , 而 ASP 尚不支持自定義標(biāo)簽;JSP 對數(shù)據(jù)庫的訪問主要通過 JDBC (Java data base connectivity) 來實(shí)現(xiàn)的。對于只支持 ODBC 的數(shù)據(jù)庫, 可以通過 JDBCODBC Bridge 來實(shí)現(xiàn)訪問;JSP 的安全性很高, 它在執(zhí)行前要編譯成字節(jié)碼,再由 Java虛擬機(jī)執(zhí)行,源碼相對不易被下載;JSP 突出的組件技術(shù) (JavaBeans) 使 JSP 具有跨平臺可重用性。JavaBeans (簡稱 Bean) 是一種可重用 Java 組件,通過封裝成為具有某種功能或者處理某個業(yè)務(wù)的對象。既可以被 Java Applet、Servlet、JSP 等 Java 程序調(diào)用,也可以被可視化 Java 開發(fā)工具使用。 JSP 頁面的基本結(jié)構(gòu)在傳統(tǒng)的 HTML 頁面文件中加入 Java 程序片和 JSP 標(biāo)簽就構(gòu)成了一個 JSP頁面文件。一個 JSP 頁面可由 5 種元素合成:1) 普通的 HTML 標(biāo)記符例如:HTML/HTMLBODY/BODYFONT/FONTPBR等。2) JSP 標(biāo)簽如指令標(biāo)簽、動作標(biāo)簽。3) 變量和方法的聲明在“%! ”和 “%”標(biāo)記符號之間聲明變量和方法。4) Java 程序片可以在“%”和“%”之間插入 Java 程序片,一個 JSP 頁面可以有許多程序片。5) Java 表達(dá)式可以在“%=”和“%”之間插入一個 Java 表達(dá)式,這個表達(dá)式必須能17 / 60求值。表達(dá)式的值由服務(wù)器負(fù)責(zé)計(jì)算,并將計(jì)算結(jié)果用字符串的形式發(fā)送到客戶端顯示。其中③④⑤形成的部分被稱為 JSP 的腳本部分。 JSP 文件的訪問方法訪問 JSP 文件主要有兩種方法:1) 瀏覽器發(fā)送對 JSP 文件的請求。JSP 文件會訪問 Bean 或其它能將生成的動態(tài)內(nèi)容發(fā)送到瀏覽器的組件。當(dāng) Web 服務(wù)器收到一個 JSP 文件請求時,服務(wù)器將請求發(fā)送至 Tomcat 應(yīng)用服務(wù)器(也可稱之為 JSP 引擎)。Tomcat 應(yīng)用服務(wù)器對 JSP 文件進(jìn)行語法分析并生成 Java 源文件(被編譯和執(zhí)行為 Servlet)。Java 源文件的生成和編譯僅在初次調(diào)用 Servlet 時發(fā)生,除非已經(jīng)更新了原始JSP 文件。在這種情況下, Tomcat 應(yīng)用服務(wù)器將檢測所做的更新,并在執(zhí)行它之前重新生成和編譯 Servlet。2) 發(fā)送至 Servlet 的請求。該訪問模型使將內(nèi)容生成從內(nèi)容顯示中分離出來實(shí)現(xiàn)得更為方便。Tomcat 應(yīng)用服務(wù)器支持 HttpServiceRequest 對象和HttpServiceResponse 對象的一套新方法,允許調(diào)用的 Servlet 將一個對象放入(通常是一個 Bean) 請求對象中,并將該請求傳遞到另一個頁面(通常是一個 JSP 文件) 以供顯示。調(diào)用的頁面從請求對象中檢索 Bean,并用 JSP 來生成客戶機(jī)端的 HTML。 JavaBean 技術(shù)按照 Sun 公司的定義, JavaBean 是一個可重復(fù)使用的軟件組件。實(shí)際上JavaBean 是一種 Java 類,通過封裝屬性和方法成為具有某種功能或者處理某個業(yè)務(wù)的對象,簡稱 bean。一個基本的 JSP 頁面就是由普通的 HTML 標(biāo)簽和 Java 程序片組成,如果程序片和 HTML 標(biāo)簽大量交互在一起,就顯得頁面混雜,不易維護(hù)。JSP 頁面應(yīng)當(dāng)將數(shù)據(jù)處理過程指派給一個或幾個 bean 來完成,只需在 JSP 頁面中調(diào)用這個18 / 60bean 即可 [15]。JavaBean 是基于 Java 語言的,具有以下特點(diǎn):1) 可以實(shí)現(xiàn)代碼的重復(fù)利用。2) 易編寫、易維護(hù)、易使用。3) 可以在任何安裝了 Java 運(yùn)行環(huán)境的平臺上使用,而不需要重新編輯。從根本上說,JavaBean 可以看成一個黑盒子,即只需知道其功能而不必管其內(nèi)部結(jié)構(gòu)的軟件組件。JavaBean 是一種基于 Java 的軟件組件。JSP 對于在Web 應(yīng)用中集成 JavaBean 組件提供了完善的支持。這種支持不僅能縮短開發(fā)時間(可以直接利用經(jīng)測試和可信任的已有組件,避免了重復(fù)開發(fā)) ,也為 JSP 應(yīng)用帶來了更多的可伸縮性。JavaBean 組件可以用來執(zhí)行復(fù)雜的計(jì)算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫的交互以及數(shù)據(jù)提取等。在本系統(tǒng)中對數(shù)據(jù)庫中的操作就采用了JavaBean 技術(shù),用它封裝底層數(shù)據(jù)庫操作,在 JSP 網(wǎng)頁中進(jìn)行調(diào)用,從而簡化JSP 網(wǎng)頁的代碼,便于維護(hù)。 JDBC 技術(shù)在 JSP 中可以使用 Java 的 JDBC 技術(shù),實(shí)現(xiàn)對數(shù)據(jù)庫中表記錄的查詢、修改和刪除等操作。JDBC 技術(shù)在 JSP 開發(fā)中占有很重要的地位。JDBC(Java DataBase Connectivity)是 Java 數(shù)據(jù)庫連接 API。JDBC 能完成個三件事:1) 與一個數(shù)據(jù)庫建立連接。2) 向數(shù)據(jù)庫發(fā)送 SQL 語句。3) 處理數(shù)據(jù)庫返回的結(jié)果。JDBC 在設(shè)計(jì)上和 ODBC 很相似。JDBC 和數(shù)據(jù)庫建立的一種常見方式是建立起一個 JDBCODBC 橋接器。由于 ODBC 驅(qū)動程序被廣泛地使用,建立這種橋接器后,使得 JDBC 有能力訪問幾乎所有類型的數(shù)據(jù)庫。JDBC 也可以直接加載數(shù)據(jù)庫驅(qū)動程序訪問數(shù)據(jù)庫。因此可以說,JDBC 技術(shù)在 J2EE 結(jié)構(gòu)的中間層與 EIS 層的數(shù)據(jù)源之間提19 / 60供了數(shù)據(jù)庫獨(dú)立的開放性連接,使應(yīng)用程序不僅可以對基于 SQL 標(biāo)準(zhǔn)的關(guān)系數(shù)據(jù)庫系統(tǒng)進(jìn)行訪問,而且還可以對其他類型的數(shù)據(jù)源進(jìn)行訪問。JDBC 技術(shù)通過提供 API 使 Java 應(yīng)用程序能夠?qū)崿F(xiàn)位于企業(yè)信息系統(tǒng)層的數(shù)據(jù)庫的訪問能力。J2EE結(jié)構(gòu)中間層的應(yīng)用組件通過JDBC技術(shù)主要可以完成下列功能:實(shí)現(xiàn)與位于J2EE 結(jié)構(gòu)中企業(yè)信息系統(tǒng)層的數(shù)據(jù)庫服務(wù)器的連接;管理事務(wù);將 SQL 請求傳送到數(shù)據(jù)庫管理系統(tǒng)進(jìn)行預(yù)處理并執(zhí)行相應(yīng)的數(shù)據(jù)操作;執(zhí)行存儲過程;檢查修改查詢語句的執(zhí)行結(jié)果等。 數(shù)據(jù)庫連接池技術(shù)在數(shù)據(jù)庫操作中,數(shù)據(jù)庫的連接開銷最大,耗時最長。通常的處理方法是,Servlet 響應(yīng)客戶請求時,如果要求操作數(shù)據(jù)庫,那么它會建立數(shù)據(jù)庫的連接,然后與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交換,最后,關(guān)閉數(shù)據(jù)庫的連接。這樣就會造成每響應(yīng)一次用戶請求就會進(jìn)行一次數(shù)據(jù)庫連接和關(guān)閉,如果同時請求的用戶數(shù)量很大,那么數(shù)據(jù)庫的連接和關(guān)閉的開銷將會變得巨大。必然會造成系統(tǒng)的負(fù)載過重,響應(yīng)的速度也會減慢。顯然,這種處理方法性能是較低的,但是由于 Servlet 是基于 HTTP 協(xié)議,HTTP 協(xié)議是無狀態(tài)的協(xié)議,在處理完用戶的響應(yīng)后,不會保存用戶的各種信息。因此,同一個用戶的請求會當(dāng)作不同的請求來處理。那么,同一個用戶的兩次數(shù)據(jù)庫操作本應(yīng)該做一次數(shù)據(jù)庫連接,但由于 HTTP 無狀態(tài)的原因,會進(jìn)行兩次數(shù)據(jù)庫連接。HTTP 協(xié)議的無狀態(tài)性是造成數(shù)據(jù)庫的無效的連接和關(guān)閉的根本原因。HTTP 協(xié)議是國際標(biāo)準(zhǔn)的協(xié)議,無法將其改變。為了提高數(shù)據(jù)庫連接的有效性,中間層的數(shù)據(jù)庫連接將采用數(shù)據(jù)庫連接池技術(shù)。連接池技術(shù)的核心思想是在數(shù)據(jù)庫的連接被需要之前去建立一個數(shù)據(jù)庫連接的集合。也就是說,在 Servlet 第一次被裝載時,先建立一定數(shù)量的數(shù)據(jù)庫連接后,放在一個集合對象中。這個對象作為數(shù)據(jù)庫連接的代理,所有數(shù)據(jù)庫連接的訪問都由這個代理進(jìn)行控制。當(dāng)有客戶端請求數(shù)據(jù)庫連接時,它只需簡單地向數(shù)據(jù)庫連接代理程序請求空閑的連接就可以了。這個代理程序?qū)倪B接池20 / 60中選擇一個空閑的連接,并給它進(jìn)行標(biāo)記,以說明此連接不可用,然后將這個連接返回給瀏覽器。由于連接是提前創(chuàng)建的,因此代理程序幾乎可以不需要任何系統(tǒng)的開銷就立刻返回一個連接。當(dāng)連接不再需要時,瀏覽器可以將它返回給代理程序,再由代理程序標(biāo)記為可用。除了處理連接,代理程序?qū)⒇?fù)責(zé)維護(hù)連接池的所有細(xì)節(jié)。其中包括數(shù)據(jù)庫連接的刷新,刷新主要通過刪除并重新建立某些數(shù)據(jù)庫連接,或者當(dāng)連接池中的可用連接被大量并行請求耗盡的時候而去創(chuàng)建新的連接。21 / 604 數(shù)據(jù)庫設(shè)計(jì)酒店管理系統(tǒng)中,建立用于菜單列表及用戶列表管理的數(shù)據(jù)庫是一大重點(diǎn),本系統(tǒng)除了管理菜單列表需要數(shù)據(jù)庫以外,還要對各種數(shù)據(jù)記錄進(jìn)行管理。因此,對于本系統(tǒng)來說,建立良好的數(shù)據(jù)庫,為系統(tǒng)提供高效的數(shù)據(jù)支持,尤其是提供實(shí)時有效的菜單及用戶列表是系統(tǒng)實(shí)現(xiàn)的一個關(guān)鍵之處。 數(shù)據(jù)庫的引入數(shù)據(jù)庫(Database) ,是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫,是用于查詢的大量數(shù)據(jù)的存儲區(qū)域。使用數(shù)據(jù)庫可以帶來許多好處:如減少了數(shù)據(jù)的冗余度,從而大大地節(jié)省了數(shù)據(jù)的存儲空間,實(shí)現(xiàn)數(shù)據(jù)資源的充分共享等等。此外,數(shù)據(jù)庫技術(shù)還為用戶提供了非常簡便的使用手段,使用戶易于編寫有關(guān)數(shù)據(jù)庫應(yīng)用程序。特別是近年來推出的計(jì)算機(jī)關(guān)系數(shù)據(jù)庫管理系統(tǒng),操作直觀,使用靈活,編程方便,功能強(qiáng)大,環(huán)境適應(yīng)廣泛,數(shù)據(jù)處理能力極強(qiáng)。數(shù)據(jù)庫的設(shè)計(jì)是指對一個給定的應(yīng)用環(huán)境,構(gòu)造數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),滿足各種用戶需求。作為信息資源開發(fā)、管理和服務(wù)的一種有效的手段,數(shù)據(jù)庫技術(shù)的應(yīng)用已越來越廣泛,從小型的單項(xiàng)事務(wù)處理系統(tǒng)到大型的信息系統(tǒng)大都用先進(jìn)的數(shù)據(jù)庫技術(shù)來保持系統(tǒng)數(shù)據(jù)的安全性、完整性和共享性。對一個實(shí)際的系統(tǒng)來說,數(shù)據(jù)庫表的設(shè)計(jì)在遵循數(shù)據(jù)庫理論的同時,必須能用開發(fā)工具來實(shí)現(xiàn)用戶在各方面提出的功能要求。一個真正的、完整的站點(diǎn)是離不開數(shù)據(jù)庫的,因?yàn)樯倭康臄?shù)據(jù),如網(wǎng)頁訪問人數(shù)等完全可以存儲在文本文件中,但實(shí)際應(yīng)用中,需要保存的數(shù)據(jù)遠(yuǎn)不止這一點(diǎn)點(diǎn),而且這些數(shù)據(jù)之間往往還有關(guān)聯(lián),利用數(shù)據(jù)庫來管理這些數(shù)據(jù),可22 / 60以很方便的查詢和更新??梢哉f一個動態(tài)網(wǎng)站的建設(shè)是離不開一個設(shè)計(jì)最優(yōu)的數(shù)據(jù)庫的。我們現(xiàn)在可以使用的數(shù)據(jù)庫有很多種,如:Fox 數(shù)據(jù)庫(.dbf) 、Access 數(shù)據(jù)庫(.mdb)、DBInformix 、Oracle 和 SQL Server 等等。在本次設(shè)計(jì)中,選擇了甲骨文的 Oracle 數(shù)據(jù)庫工具。 數(shù)據(jù)庫的表設(shè)計(jì)系統(tǒng)采用 JDBCODBC 橋接器方式訪問數(shù)據(jù)庫。用 Oracle 建立一個數(shù)據(jù)庫ORCL,該數(shù)據(jù)庫有如下表。1) 菜單信息表 menu_inf如表 所示。菜單信息表 menu_inf 保存了所有菜品及音頻信息,添加的菜品或飲品信息即存入該表中。該表中的菜品及飲品記錄是整個系統(tǒng)中各項(xiàng)功能的數(shù)據(jù)基礎(chǔ)。MENU_MARK 是菜單標(biāo)記,0 為菜品,1 為飲品,MENU_ID 是菜品編號,MENU_MARK 與 MENU_ID 為表的聯(lián)合主鍵;MENU_NAME 是菜品或飲品名稱,MENU_STYLE 為菜品或飲品所屬系列(如:川菜、粵菜…) ;MENU_TYPE 為菜品或飲品所屬種類(例如:蒸菜、炒菜、燉菜…) ;MENU_PRICE 為菜品或飲品價格,MENU_DISCOUNT 為菜品或飲品折扣信息;NATIONAL_INF 為菜品或飲品的所屬國籍; WEIGHT_INF 為菜品或飲品的權(quán)重,這個字段便于推薦菜品的管理;MENU_STATE 為菜品或飲品的狀態(tài)標(biāo)記,0 為供應(yīng),1 為缺貨。表 菜單信息表 menu_inf字段名稱 數(shù)據(jù)類型 說明MENU_MARK VARCHAR2 菜單標(biāo)記,不允許空值。MENU_ID VARCHAR2 菜品或飲品編號,不允許空值。MENU_NAME VARCHAR2 菜品或飲品名稱,不允許空值。MENU_STYLE VARCHAR2 菜品或飲品所屬系列,允許空值。MENU_TYPE VARCHAR2 菜品或飲品所屬種類,允許空值。MENU_PRICE VARCHAR2 菜品或飲品價格,不允許空值。MENU_DISCOUNT VARCHAR2 菜品或飲品折扣,允許空值。NATIONAL_INF VARCHAR2 菜品或飲品所屬國籍,允許空值。WEIGHT_INF VARCHAR2 菜品或飲品權(quán)重,不允許空值。23 / 60MENU_STATE VARCHAR2 菜品或飲品狀態(tài),不允許空值。2) 菜單狀態(tài)信息 menu_state_inf如表 所示。根據(jù)菜品狀態(tài)標(biāo)記,可以獨(dú)立地對菜單狀態(tài)做刪改,STATE_MARK 為菜單狀態(tài)標(biāo)記,是該表中的主鍵,STATE_NAME 為狀態(tài)名稱。表 菜單狀態(tài)表 menu_state_inf字段名稱 數(shù)據(jù)類型 說明STATE_M
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1