基于Web的影院信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第1頁
基于Web的影院信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第2頁
基于Web的影院信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第3頁
基于Web的影院信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第4頁
基于Web的影院信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、目目 錄錄 1 1 緒論緒論 .1 1 1.1 研究背景及研究意義.1 1.2 研究內(nèi)容.1 1.3 論文結(jié)構(gòu).2 2 2 系統(tǒng)開發(fā)工具與相關(guān)技術(shù)介紹系統(tǒng)開發(fā)工具與相關(guān)技術(shù)介紹 .3 3 2.1 JSF 技術(shù) .3 2.2 PrimeFaces.3 2.3 MyEclipse.4 2.4 MySQL.4 2.5 Java 語言 .4 3 3 需求分析需求分析 .5 5 3.1 系統(tǒng)功能需求分析.5 3.1.1 普通用戶功能 .5 3.1.2 管理員功能 .6 3. 2 系統(tǒng)數(shù)據(jù)庫分析.7 3.2.1 數(shù)據(jù)庫物理建模分析 .7 3.2.2 實(shí)體表詳細(xì)分析 .7 3. 3 系統(tǒng)結(jié)構(gòu)分析.10 3.

2、3.1 系統(tǒng)功能結(jié)構(gòu)分析 .10 3.3.2 系統(tǒng)邏輯結(jié)構(gòu)分析 .10 4 4 系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)詳細(xì)設(shè)計(jì) .1212 4.1 普通用戶功能的設(shè)計(jì).12 4.1.1 用戶注冊(cè)/登錄功能 .12 4.1.2 查找電影功能 .14 4.1.3 電影投票功能 .14 4.1.4 添加影評(píng)功能 .15 4.1.5 禮品兌換功能 .15 4.1.5 用戶訂/退功能 .16 本本 科科 畢畢 業(yè)業(yè) 論論 文文 4.2 管理員功能的設(shè)計(jì) .17 4.2.1 管理員登錄功能 .18 4.2.2 電影信息管理功能 .18 4.2.3 用戶信息管理功能 .19 4.2.4 禮品管理功能 .21 4.3 主要界面設(shè)計(jì)

3、.22 4.3.1 主頁設(shè)計(jì) .22 4.3.2 電影詳情頁面設(shè)計(jì) .23 4.4 關(guān)鍵問題及解決方案.23 5 5 系統(tǒng)的實(shí)現(xiàn)系統(tǒng)的實(shí)現(xiàn).2727 5.1 系統(tǒng)開發(fā)以及運(yùn)行環(huán)境 .27 5.2 面向普通用戶的系統(tǒng)功能 .27 5.2.1 系統(tǒng)主頁功能 .27 5.2.2 用戶注冊(cè)/登錄功能 .28 5.2.3 查找電影功能 .29 5.2.4 查看全部電影功能 .29 5.2.4 查看電影排名功能 .32 5.2.5 投票功能 .32 5.3 面向管理員的系統(tǒng)功能 .32 5.3.1 管理員主頁 .32 5.3.2 電影信息管理功能 .33 5.3.3 用戶信息管理功能 .35 5.3.4

4、禮品管理功能 .37 結(jié)結(jié) 論論 .3939 致致 謝謝 .4040 參參 考考 文文 獻(xiàn)獻(xiàn) .4141 第 1 頁 共 46 頁 1 1 緒論緒論 隨著經(jīng)濟(jì)的發(fā)展,人們生活質(zhì)量提高了,娛樂方式也日新月異。電影不再是“奢 侈品” ,而是人們?nèi)粘I钪行蓍e娛樂必備的商業(yè)產(chǎn)物。在這個(gè)網(wǎng)絡(luò)信息化濃厚的時(shí)代, 網(wǎng)絡(luò)成為主要的通訊手段。當(dāng)代網(wǎng)絡(luò)如此發(fā)達(dá),也有不少基于 Web 的電影院網(wǎng)站,如 深圳太陽數(shù)碼影城、Mtime 時(shí)光網(wǎng)、58 影院等。他們多用 JSP 實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)站制作。JSP 將網(wǎng)頁的設(shè)計(jì)同網(wǎng)頁的后臺(tái)邏輯分離,是支持可重用的基于組件的設(shè)計(jì)。但是 JSP 的 組件不夠豐富,要實(shí)現(xiàn)特殊功能的控件,

5、如用戶打分的可拖拉五角星打分條,沒有現(xiàn) 成的組件,編寫制作起來非常復(fù)雜麻煩。雖然 JSP 簡化了編程開發(fā),但在復(fù)雜邏輯中 還是要編寫很多代碼,開發(fā)人員的學(xué)習(xí)負(fù)擔(dān)也不斷加重。JavaServer Faces(JSF)框架 可以很好的解決以上問題,它提供全新的,動(dòng)態(tài)的標(biāo)簽庫,且組件豐富多樣,組件可 以同托管 Bean 綁定,進(jìn)一步簡化了代碼編寫,減少了代碼量。利用 JSF 能制作出飽滿 的頁面,且支持拖拽功能,非常方便。因此本系統(tǒng)要使用 JSF 框架,利用發(fā)達(dá)的網(wǎng)絡(luò) 技術(shù),構(gòu)建起一個(gè)基于 Web 的影院信息管理系統(tǒng)。 1.11.1 研究背景及研究意義研究背景及研究意義 信息時(shí)代的今天,我們感受到計(jì)

6、算機(jī)科學(xué)日新月異的氣息日漸膨脹。如此,信息 的傳播途徑與傳遞方式也隨之豐富多彩。發(fā)展日漸成熟的計(jì)算機(jī)網(wǎng)絡(luò)承載著大量信息 的流通任務(wù),人們的生活也越來越依靠網(wǎng)絡(luò)。在日常娛樂商品中,電影成為豐富精神 生活的佳品。而如今信息流逝太快,傳統(tǒng)媒體不能對(duì)影院起到較高效的宣傳與展示, 電影文化只存在于紙張和膠片中使其傳播力度受到局限。由此一來,人們不易在第一 時(shí)間獲知影院動(dòng)態(tài),許多精彩的電影信息得不到廣泛交流,得不到有效的定格,人們 想要了解詳細(xì)的、日志性的影院信息可能也無從下手。我們要利用發(fā)達(dá)的網(wǎng)絡(luò),利用 時(shí)新的技術(shù),構(gòu)建起一個(gè)基于 Web 的影院信息管理系統(tǒng)。這樣,各大影院就可以合理 規(guī)劃電影信息,展示

7、影院文化,與客戶做好充分交流,讓用戶感受到實(shí)時(shí)信息,使影 院運(yùn)營的更加流暢,獲取更好的經(jīng)濟(jì)效益。 1.21.2 研究內(nèi)容研究內(nèi)容 該系統(tǒng)主要面向普通用戶和管理員兩種人群。對(duì)于普通用戶可實(shí)現(xiàn)注冊(cè)/登錄功能、 積分獲取功能、查找站內(nèi)電影功能(多條件查找) 、瀏覽影院電影信息功能、添加影評(píng) 功能、電影投票功能、訂/退票功能、兌換禮品功能;管理員可實(shí)現(xiàn)注冊(cè)/登錄功能、更 新電影信息功能、據(jù)用戶投票進(jìn)行電影排名功能、更新展示的禮品功能、管理用戶功 能。 第 2 頁 共 46 頁 該系統(tǒng)使用了新框架 JavaServer Faces 2.0,使用的開發(fā)語言為 Java 語言,開發(fā)工 具采用的是 MyEcl

8、ipse10.0,采用 Tomcat7.0 作為 Web 服務(wù)器,采用 MySQL 作為數(shù)據(jù) 庫。 1.31.3 論文結(jié)構(gòu)論文結(jié)構(gòu) 本文首先對(duì)實(shí)現(xiàn)系統(tǒng)所有的技術(shù)和工具進(jìn)行了介紹(第二章) ;其次對(duì)系統(tǒng)需求進(jìn) 行了詳細(xì)的分析(第三章) ;再次,本文對(duì)系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn),以及所遇到的關(guān)鍵 問題及解決方案做了詳細(xì)的闡述(第四章) ;最后對(duì)系統(tǒng)實(shí)現(xiàn)效果進(jìn)行了展示(第五章) 。 第 3 頁 共 46 頁 2 2 系統(tǒng)開發(fā)工具與相關(guān)技術(shù)介紹系統(tǒng)開發(fā)工具與相關(guān)技術(shù)介紹 本系統(tǒng)使用 JSF2.0 技術(shù),PrimeFaces3.5 參考實(shí)作,MyEclipse10.0 開發(fā)環(huán)境, MySQL 數(shù)據(jù)庫,Tomc

9、at7.0 服務(wù)器。 2.12.1 JSFJSF 技術(shù)技術(shù) JavaServerFaces(JSF)是一個(gè)新的,基于 Java 的標(biāo)準(zhǔn)框架。它為 Web 應(yīng)用程序 提供了用戶接口,而且它化簡了用戶接口的應(yīng)用。也就是說,JSF 提供了一種以組件為 中心的用戶界面(UI)構(gòu)建方法1,不管是前臺(tái)頁面設(shè)計(jì)人員還是后臺(tái)程序開發(fā)人員,都 可以使用 JSF 獨(dú)立地完成自己涉及的模塊,前臺(tái)與后臺(tái)得到了有效地分離,大大減小 了耦合度。JSF2.0 內(nèi)置于 Facelets 提供的先進(jìn)模板,與 Ajax 更完美地結(jié)合;它提供了 復(fù)合多種功能的組件,只需將組件的功能屬性啟動(dòng),就可以非常簡便的使用該功能; 它整合了

10、Bean 的驗(yàn)證,改進(jìn)了驗(yàn)證規(guī)范2。JSF 有很多用于提高其 Web 應(yīng)用程序的類 庫,如 PrimeFaces,MyFaces 等,本系統(tǒng)使用了 PrimeFaces 類庫。 MVC 是常用的設(shè)計(jì)模式,本系統(tǒng)使用了 JSF 來實(shí)現(xiàn)。MVC 是 Model-View- Controller 的簡稱,即模型視圖控制器3。使用 JSF 實(shí)現(xiàn)視圖層,使頁面更加獨(dú)特 美觀,它解決了網(wǎng)頁設(shè)計(jì)的靜態(tài)性與程序設(shè)計(jì)的動(dòng)態(tài)性間的矛盾,使設(shè)計(jì)更加方便簡 潔。JSF 提供了一組新的動(dòng)態(tài)的標(biāo)簽,它與后臺(tái)動(dòng)態(tài)程序相連接。JSF 框架自帶的 Servlet 擔(dān)任了 MVC 中的控制器,而后臺(tái) Bean 實(shí)現(xiàn)了模型層。JS

11、F 實(shí)現(xiàn)了視圖和業(yè)務(wù) 邏輯代碼的完全分離,完全遵循 MVC2 模式4。 那么在JSF中是怎樣實(shí)現(xiàn)前臺(tái)與后臺(tái)的聯(lián)系,利用什么來管理資源的呢?這就是托 管Bean。在Java編程語言中,一個(gè)托管Bean(Managed Bean)就是一個(gè)Java對(duì)象。定義 了托管Bean,就不需再手動(dòng)實(shí)例化類對(duì)象了。托管Bean代表了一種可管理的資源,比 如一個(gè)組件,一個(gè)臺(tái)設(shè)備,一個(gè)服務(wù)類。托管Bean具有惰性初始化的性質(zhì),僅當(dāng)在運(yùn) 行時(shí)間內(nèi)應(yīng)用程序需要它時(shí),容器才將它初始化,也就是說,在JSF 架構(gòu)中, 后臺(tái)處 理Bean 交由JSF容器進(jìn)行管理。配置文件為faces-config.xml,Bean 對(duì)象的生命

12、周期可 以為null: 用時(shí)才生成5。任何Java公共類,任何無參的構(gòu)造函數(shù)都能做托管 Bean,List和Map對(duì)象也可以2。 2.22.2 PrimeFacesPrimeFaces Primefaces是JSF的參考實(shí)例。它提供了豐富的組件,內(nèi)置于Ajax,基于JSF2.0標(biāo)準(zhǔn)。 它是輕組件庫,只有一個(gè)jar文件,無需配置,沒有必要的依附體,是頁面表現(xiàn)的更生 動(dòng),倍受程序開發(fā)者的青睞。PrimeFaces提供了局部頁面呈現(xiàn)功能,這就可以選擇在一 個(gè)JSF生命周期中要運(yùn)行什么,最后要同Ajax返回什么數(shù)據(jù)。JSF的原稿基于jQuery和 第 4 頁 共 46 頁 JavaScript6。Pr

13、imeFaces提高了JSF Web應(yīng)用程序開發(fā)的效率,它主要由三個(gè)模塊構(gòu)成, 即UI模塊,Optimus模塊和FacesTrace模塊。UI提供的組件支持通過Ajax更新頁面。 Optimus模塊簡化了JSF的開發(fā),F(xiàn)acesTrace模塊提供的各種工具能夠JSF Web應(yīng)用程序, 可查看JSF生命周期,進(jìn)行性能跟蹤查看,監(jiān)聽頁面信息等。 2.32.3 MyEclipseMyEclipse 本系統(tǒng)使用My Eclipse10.0開發(fā)平臺(tái)。Myeclipse 是Eclipse 支持下的J2EE開發(fā)插件, 功能十分完善,具備了完備的編碼、調(diào)試、測試和發(fā)布等功能并且完整支持 HTML、Struts

14、、JSF、CSS、JSP、SQL、Hibernate、Spring 等技術(shù)。Myeclipse 插件基 本上涵蓋了眾多Eclipse 插件的功能,能滿足我們的各種應(yīng)用需求,基本上安裝了它就 無須其它任何插件7。用Genuitec公司的集成開發(fā)環(huán)境MyEclipse做開發(fā),人機(jī)界面良好、 交互性好、實(shí)時(shí)性強(qiáng)、移植性強(qiáng),經(jīng)過實(shí)際運(yùn)行檢驗(yàn),證實(shí)了該系統(tǒng)操作簡便,響應(yīng) 快,通用性、靈活性和安全性好8,能夠明顯提影院信息管理的效率。 2.42.4 MySQLMySQL MySQL 是由瑞典MySQL AB 公司開發(fā)的一個(gè)開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫管理 系統(tǒng),由于其體積小、速度快、總體擁有成本低被廣泛地應(yīng)

15、用在Internet 上的中小型網(wǎng) 站開發(fā)中,目前通過JDBC 連接MySQL 一般采用兩種方式:JDBC-ODBC 連接橋方式 和純Java 驅(qū)動(dòng)程序直接連接的方式9。JDBC(Java Data Base Connectivity)是基于中 間件平臺(tái)的一種數(shù)據(jù)庫訪問技術(shù),他能夠很好的與ODBC(Open DataBase Connectivity)結(jié)合,具有可移植性、平臺(tái)無關(guān)性10。要通過JDBC 訪問MySQL,需要 下載JDBC 驅(qū)動(dòng)程序。通過DriverManager 類的getConnection 方法可以建立連接11。 數(shù)據(jù)庫中數(shù)據(jù)的丟失,若無法通過軟件等途徑恢復(fù),則會(huì)致使業(yè)務(wù)無

16、法進(jìn)行12。 所以數(shù)據(jù)庫的備份是非常重要的。MySQL可通過Mysqldump、客戶端管理工具、直接 拷貝、日志進(jìn)行備份。 2.52.5 JavaJava 語言語言 Java 語言是一種純面向?qū)ο蟮木幊陶Z言。它主要的特性是面向?qū)ο?,可移植性?多線程,動(dòng)態(tài)性。面向?qū)ο笏哂械姆庋b性,繼承性,多態(tài)性等特點(diǎn)使其具有強(qiáng)大的 生命力15。.java 文件中存放了 Java 源程序,它經(jīng) javac 命令編譯后就生成了相應(yīng)的. class 文件。 第 5 頁 共 46 頁 3 3 需求分析需求分析 所謂好的開始是成功的一半,在啟動(dòng)一個(gè)項(xiàng)目前需求分析是必不可少的也是至關(guān) 重要的一步。我們要對(duì)準(zhǔn)啟動(dòng)項(xiàng)目進(jìn)行

17、數(shù)據(jù)采集,分析預(yù)計(jì)實(shí)現(xiàn)的功能及功能的可行 性,對(duì)系統(tǒng)結(jié)構(gòu)進(jìn)行搭建,對(duì)數(shù)據(jù)對(duì)象進(jìn)行物理建模,對(duì)其存儲(chǔ)方式、存儲(chǔ)結(jié)構(gòu)、依 賴關(guān)系進(jìn)行縝密的揣測定奪。 3.13.1 系統(tǒng)功能需求分析系統(tǒng)功能需求分析 基于 Web 的影院信息管理系統(tǒng)面向兩種用戶,即普通用戶和管理員。普通用戶為 影院的大眾客戶,通過該系統(tǒng)與影院進(jìn)行信息交流;管理員則是對(duì)系統(tǒng)的數(shù)據(jù)進(jìn)行管 理,主要是對(duì)數(shù)據(jù)的修改,添加和修改。 下面對(duì)面向普通用戶功能和面向管理員功能進(jìn)行具體分析。 3.1.1 普通用戶功能 普通用戶功能用例圖建模分析如圖 3.1 所示。 圖 3.1 普通用戶功能用例建模分析圖 a普通用戶注冊(cè)功能:用戶輸入用戶名及密碼后,注

18、冊(cè)成功后方可登錄。未經(jīng)注 冊(cè)登錄者,系統(tǒng)予以提示,并拒絕本次登錄。普通用戶身份代碼為“0”。 b普通用戶登錄功能:對(duì)已注冊(cè)用戶經(jīng)行用戶名與密碼的匹配驗(yàn)證。驗(yàn)證通過后 方可登錄成功。 c積分獲取功能:用戶注冊(cè)成功后自動(dòng)獲取相應(yīng)積分(本系統(tǒng)為 30 分) 。訂票成 功后會(huì)獲取相應(yīng)積分(本系統(tǒng)為 10 分) ,退票后收回所獲積分。積分可換取禮品。 第 6 頁 共 46 頁 d添加影評(píng)功能:用戶可對(duì)電影進(jìn)行評(píng)價(jià),打分。 e電影投票功能:用戶可選擇進(jìn)入投票頁面,對(duì)電影進(jìn)行投票。 f訂票功能:用戶登錄成功后可訂電影票,根據(jù)座位圖選擇座位號(hào),訂票成功后 返回訂單號(hào)。 g退票功能:登錄后可查看訂單信息,在訂單

19、生產(chǎn)后 24 小時(shí)內(nèi)可退訂。 h查找電影功能:用戶可根據(jù)電影名稱,電影效果(是否為 3D 電影) ,上映日期, 觀看日期,電影分類查找站內(nèi)電影。 i瀏覽網(wǎng)站功能:用戶無需登錄,可查看近期上映電影信息,站內(nèi)電影列表,電 影詳細(xì)信息等頁面,但如果要實(shí)現(xiàn)登錄后才有的功能,若尚未登錄,系統(tǒng)會(huì)予以提示。 3.1.2 管理員功能 管理員功能用例圖建模分析如圖 3.2 所示。 圖 3.2 管理員功能用例建模分析圖 a管理員登錄功能:管理員已添加到數(shù)據(jù)庫中,身份代碼為“1”。管理員無注冊(cè)功 能,新的管理與由已有管理員進(jìn)行添加(見更新用戶功能) 。登錄時(shí),系統(tǒng)根據(jù)身份代 碼驗(yàn)證身份,同時(shí)驗(yàn)證用戶名和密碼是否匹配

20、,可報(bào)錯(cuò)。登錄成功后進(jìn)行相應(yīng)操作。 b更新電影信息功能:可添加/刪除電影;修改電影信息:電影名稱,上映時(shí)間, 電影簡介,電影效果,海報(bào)。 c更新禮品信息:對(duì)用戶積分可換取的禮品進(jìn)行添加,刪除。 d發(fā)布電影排榜功能:根據(jù)用戶投票對(duì)電影進(jìn)行熱度排名,將排名列表公布。 第 7 頁 共 46 頁 e更新用戶功能:總管理員(身份代碼為“1”)可添加新管理員和普通用戶,新管理 員屬于二級(jí)管理員,身份代碼為“2”。只有總管理員才能刪除二級(jí)管理員和普通用戶。 f普通用戶功能:管理員登錄后擁有普通用戶的多有功能。 3.3. 2 2 系統(tǒng)數(shù)據(jù)庫分析系統(tǒng)數(shù)據(jù)庫分析 本系統(tǒng)設(shè)計(jì)到的實(shí)體表有:用戶信息表、電影信息表、電

21、影分類表、影評(píng)表、禮 品信息表、影院座位表、訂單表、禮品兌換單表。 3.2.1 數(shù)據(jù)庫物理建模分析 系統(tǒng)數(shù)據(jù)庫物理建模如圖 3.3 所示。 userinform film gift criticism filmcategory subscrib giftexchange allseat N : 1 外外鍵鍵:userId 1:N 外鍵:giftId N:1 外鍵:userId N:1 外鍵:filmId N:1 外鍵:filmId N : N 圖 3.3 數(shù)據(jù)庫物理建模 userinform(用戶信息表)與 gift(禮品表)通過 giftexchange(禮品兌換單表)關(guān) 聯(lián)起來;useri

22、nform 與 film(電影信息表)通過 subscribe(訂單表)關(guān)聯(lián)起來;film 與 criticism(評(píng)論表)為 N:1 的關(guān)系;film 與 filmcategory(電影分類表)為 N:N 的關(guān)系; allseat 為座位表,存儲(chǔ)影院多有座位號(hào),與其他表沒有關(guān)聯(lián)。 3.2.2 實(shí)體表詳細(xì)分析 auserinform 為用戶信息表。它記錄了用戶名(userName) ,用戶密碼 (passWord) ,身份編碼(ustatus,標(biāo)記普通用戶和管理員級(jí)別) ,用戶編號(hào)(userId) , 用戶積分(uscore) 。用戶信息表如表 3.1 所示。 bfilm 為電影信息表。它記錄

23、了電影名稱(filmName) ,電影編號(hào)(filmId) ,電影 效果(is3D) ,電影海報(bào)(filmPicture) ,電影簡介(filmDescribe) ,電影得分 (filmScore) ,所得投票數(shù)(vote) ,上映時(shí)間(filmTime) ,播出時(shí)間(showTime) ,電 第 8 頁 共 46 頁 影分類(category1,category2,category3) ,余票數(shù)(ticketCount) 。電影信息表如表 3.2 所示。 表 3.1 用戶信息表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 userId int(11) 是否 userNamevarchar(10)

24、否 passWordvarchar(15)否 ustatusint(1)否 uscoreint(10)unsigned是 表 3.2 電影信息表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 filmIdint(11) 是否 filmNamevarchar(20)是NULL Is3Dvarchar(5)是NULL filmDescribetext 是NULL filmPicturevarchar(20)是NULL category1varchar(10)是NULL category2varchar(10)是NULL category3varchar(10)是NULL filmTimevarchar(

25、20)是NULL showTimevarchar(100)是NULL voteint(11)是NULL filmScoreint(11) 是NULL ticketCountint(11)是NULL cfilmcategory 為電影分類表。它記錄了分類編號(hào)(fcategoryId) ,分類名稱 (fcategory) 。電影分類表如表 3.3 所示。 表 3.3 電影分類表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 fcategoryId int(11) 是否 fcategoryvarchar(10)是NULL 第 9 頁 共 46 頁 dgift 為用戶積分兌換的禮品信息表。它記錄了禮品編號(hào)(

26、giftId) ,禮品名稱 (giftName) ,禮品描述(giftDescribe) ,禮品實(shí)體圖(giftPicture) ,所需積分 (requiredScore) 。禮品信息表如表 3.4 所示。 表 3.4 禮品信息表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 giftId int(11) 是否 giftNamevarchar(20)是NULL giftDescribetext是NULL giftPicture varchar(20) 是NULL requiredScoreint(11) 是NULL 表 3.5 電影票訂單表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 subId int

27、(11) 是否 filmIdint(11) 是否 filmNamevarchar(20)是NULL subTime varchar(20) 是NULL subNumint(11) 是NULL userIdint(11) 是否 esubscrib 為電影票訂單表。它記錄了訂單號(hào)(subId) ,電影編號(hào)(filmId) ,電影 名稱(filmName) ,下單時(shí)間(subTime) ,座位號(hào)(subNum) ,用戶編號(hào)(userId) 。電 影票訂單表如表 3.5 所示。 fciticism 為電影評(píng)論表。它記錄了影評(píng)編號(hào)(criId) ,影評(píng)內(nèi)容(criDescribe) , 電影編號(hào)(fil

28、mId) 。電影評(píng)論表如表 3.6 所示。 表 3.6 電影評(píng)論表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 criId int(11) 是否 criDescribetext否 filmIdvarchar(20)是否 第 10 頁 共 46 頁 ggiftexchange 為禮品兌換單表,它的性質(zhì)同電影票訂單表一樣,用戶每兌換一樣 禮品便生成一張兌換單。它記錄了兌換單編號(hào)(giftexchangeId) ,禮品編號(hào)(giftId) , 用戶編號(hào)(userId) ,禮品名稱(giftName) ,禮品實(shí)體圖(giftPicture) 。禮品兌換單表 如表 3.7 所示。 表 3.7 禮品兌換單表

29、字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 giftexchangeId int(11) 是否 giftIdint(11) 是否 userIdint(11) 是否 giftName varchar(20) 是NULL giftPictureint(11) 是NULL hallseat 為影院所有的座位編號(hào)表。它為獨(dú)立的表,與其它表沒有聯(lián)系。它之記 錄了所有座位號(hào)(seatNumber) 。座位編號(hào)表如表 3.8 所示。 表 3.8 座位編號(hào)表 字段名稱字段類型主鍵外鍵是否為空默認(rèn)值 seatNumber int(11) 是否 3.3. 3 3 系統(tǒng)結(jié)構(gòu)分析系統(tǒng)結(jié)構(gòu)分析 3.3.1 系統(tǒng)功能結(jié)構(gòu)分析

30、 本系統(tǒng)面向的操作主體為普通用戶和管理員,操作對(duì)象主要為電影信息、用戶信 息和禮品信息。普通用戶對(duì)電影信息的操作有查看、打分、投票、訂/退票;對(duì)禮品信 息的操作有查看、兌換;對(duì)用戶個(gè)人信息的操作有查看和修改。管理員對(duì)三種信息的 操作有增加、刪除、修改。系統(tǒng)功能結(jié)構(gòu)圖如圖 3.4 所示。 3.3.2 系統(tǒng)邏輯結(jié)構(gòu)分析 JSF 中用到托管 Bean 實(shí)現(xiàn)前臺(tái)頁面同后臺(tái)的傳值。該系統(tǒng)采用 JDBC 技術(shù)實(shí)現(xiàn)同 數(shù)據(jù)庫的連接。包 cinemasManageBean 中定義了所有的托管 Bean,托管 Bean 與前臺(tái) 空間綁定。Dao 包中定義了所有的具體的業(yè)務(wù)邏輯。后臺(tái)通過 Dao 包同數(shù)據(jù)庫連接,

31、 第 11 頁 共 46 頁 對(duì)數(shù)據(jù)庫進(jìn)行操作,在 cinemasManageBean 包中調(diào)用這些操作和返回的結(jié)果集向前臺(tái) 頁面?zhèn)髦?。filter 包中是過濾器,文件上傳時(shí)用到。系統(tǒng)包圖如圖 3.5 所示。 圖 3.4 系統(tǒng)功能結(jié)構(gòu)圖 cinemasManageBeanDao filter 圖 3.5 系統(tǒng)包圖 基于 Web 的影院信息管理系統(tǒng) 普通用戶功能管理員功能 電影信息 禮品 個(gè)人信息 電影信息 禮品信息 用戶信息 個(gè)人信息 查看 添加影評(píng)、打分 訂/退票 兌換 修改 刪除 修改 增加 第 12 頁 共 46 頁 4 4 系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)詳細(xì)設(shè)計(jì) 本系統(tǒng)面向管理員和普通用戶兩種人群。

32、管理員不可注冊(cè),只能由已有管理員進(jìn) 行添加。系統(tǒng)主頁,所有電影信息是開放的,無需登錄就可瀏覽;而訂票,兌換積分, 電影投票,電影評(píng)價(jià)是要用戶進(jìn)行登錄后才可享有的功能。 系統(tǒng)要對(duì)實(shí)體:用戶、電影、電影分類、影評(píng)、禮品、訂單進(jìn)行管理,所以建立 了相應(yīng)的托管 Bean 的類: UserBean,F(xiàn)ilmBean,AllfCategoryBean,CriticismBean,GiftBean,SubscribBean;托 管 Bean 要對(duì)數(shù)據(jù)庫進(jìn)行訪問則通過 Dao 包的相應(yīng)類: UserDao,F(xiàn)ilmDao,AllfCategoryDao,CriticismDao,GiftDao,Subscri

33、bDao 實(shí)現(xiàn)。系 統(tǒng)類圖如圖 4.1 所示。 UserBeanFilmBean GiftBean AllfCategoryBeanCriticismBeanSubscribBean BaseDao UserDaoFilmDao GiftDao AllfCategoryDao CriticismDaoSubscribDao 圖 4.1 系統(tǒng)類圖 4.14.1 普通用戶功能的設(shè)計(jì)普通用戶功能的設(shè)計(jì) 第 13 頁 共 46 頁 4.1.1 用戶注冊(cè)/登錄功能 a用戶注冊(cè) userlog.xgtmluserBean:UserBeanuserdao:UserDao uRegist() userdeta

34、il.xhtml:xhtml setUserName(String) userRegist(String,String) setPassWord(String) 圖 4.2 用戶注冊(cè)時(shí)序圖 該功能實(shí)質(zhì)就是對(duì)數(shù)據(jù)庫的用戶表進(jìn)行插入操作。用戶注冊(cè)時(shí)向頁面的 輸入用戶名和密碼,分別與 userBean 中的 userName 和 passWord 綁定, 的 required 屬性值為真,用進(jìn)行輸入空的提示。注冊(cè)按鈕的 action 屬性值為#userBean.uRegist,即與 userBean 的 public String uRegist()方法綁 定。點(diǎn)擊注冊(cè)按鈕后,觸發(fā) UserBean

35、 類中的 uRegist()方法,在該方法中又嵌套調(diào)用 UserDao 中的 public String userRegist(String userName,String passWord)方法,將前臺(tái) 傳入 userBean 的 userName 和 passWord 的值作為參數(shù)傳給 userRegist()方法。若注冊(cè) 成功,則返回字符串“yes”,若失敗則返回“fail”。對(duì) face-config.xml 進(jìn)行配置,檢測與 userBean 綁定的函數(shù)的返回值,實(shí)現(xiàn)頁面跳轉(zhuǎn)。時(shí)序圖如圖 4.2 所示。 b用戶登錄 第 14 頁 共 46 頁 userlog.xhtml:xhtmlu

36、serBean:UserBeanuserdao:UserDao ucheckLogin() findusers(String,String) setSessionValue(String , Object) 圖 4.3 用戶登錄時(shí)序圖 用戶登錄就是對(duì)數(shù)據(jù)庫的用戶表進(jìn)行查找,鎖定用戶名和密碼兩個(gè)條件。用戶登 錄時(shí)向中輸入用戶名和密碼,兩個(gè)輸入文本框分別與 userBean 的 userName 和 passWord 綁定,其 required 屬性值為真。登錄按鈕與 userBean 的 public String ucheckLogin()方法綁定,點(diǎn)擊登錄按鈕后觸發(fā) UserBean 類中的

37、 ucheckLogin()方法,在該方法中又嵌套調(diào)用 UserDao 類中的 public String findusers(String userName,String passWord)方法,將前臺(tái)傳入 userBean 的 userName 和 passWord 作為參數(shù)送入 findusers() ,登錄成功后返回字符串“success”,若失敗則 返回“fail”。同樣對(duì) face-config.xml 文件進(jìn)行配置實(shí)現(xiàn)頁面跳轉(zhuǎn)。時(shí)序圖如圖 4.3 所示。 4.1.2 查找電影功能 該功能使用 PrimeFaces 中的控件 dataTable 實(shí)現(xiàn)。dataTable 的 val

38、ue 屬性值是一個(gè) 數(shù)據(jù)集,即要放入該數(shù)據(jù)表的數(shù)據(jù)集合。在此,該數(shù)據(jù)集為 filmBean.films,即 dataTable 與 filmBean 中的集合 films 綁定。films 由 FilmDao 類中的 public List findFilm()方法返回。dataTable 的 var 屬性值表示數(shù)據(jù)集中的一個(gè)元 素,在此 var=“fsearch”。dataTable 中加入,使用期 filterBy 屬性即可實(shí)現(xiàn)按 指定字段查找。如按電影上映日期查找,賦值 filterBy=“#fsearch.filmTime” (filmTime 為 filmBean 的一個(gè)屬性,表示上

39、映時(shí)間)即可。 4.1.3 電影投票功能 第 15 頁 共 46 頁 fvote.xhtml:xhtmluserBean.UserBeanfilmBean:FilmBeanfilmdao:FilmDao filmVote(ActionEvent) getSessionValue(String) filmVote(int,int) 圖 4.4 電影投票時(shí)序圖 該功能就是對(duì)數(shù)據(jù)庫的電影表的票數(shù)字段進(jìn)行更新操作。該功能使用 dataTable 盛 放數(shù)據(jù)集,即所有電影,每條記錄后面加一個(gè)投票功能列,使用。其 actionListener 屬性值為#filmBean.filmVote,即與 FilmB

40、ean 類的 public void filmVote(ActionEvent event)方法綁定。filmVote()中調(diào)用 FilmDao 類的 public int filmVote(int vote,int filmId)方法。形參 vote 為當(dāng)前票數(shù),filmId 為待打分電影的編 號(hào),這兩個(gè)參數(shù)由頁面的傳入。在后臺(tái)使用 event.getComponent(). getAttributes().get(“f:attribute 的 name 屬性值”)方法即可獲取 f:attribute 的值。時(shí)序圖如 圖 4.4 所示。 4.1.4 添加影評(píng)功能 用戶在電影詳細(xì)信息頁面進(jìn)行電

41、影打分和添加影評(píng)。 a電影打分 使用 PrimeFaces 的 rating 組件實(shí)現(xiàn),并給 rating 添加 ajax。設(shè)置 rating 與 filmScore(filmBean 的一個(gè)屬性,表示電影當(dāng)前得分)綁定,設(shè)置 ajax 監(jiān)聽事件為 “rate”,監(jiān)聽動(dòng)作為 filmBean.onrate,更新對(duì)象為消息控件,即用戶進(jìn)行打分動(dòng)作后會(huì) 觸發(fā) FilmBean 類的 public void onrate(RateEvent rateevent)方法,在該方法中嵌套 調(diào)用 FilmDao 類中的 public int rateScore(int filmScore,int filmI

42、d)方法,將前臺(tái)傳入 的電影當(dāng)前得分(通過 getSessionValue(“鍵”)得到)和電影編號(hào)(通過前臺(tái) rating 組 件的得到)作為實(shí)參傳入,如此實(shí)現(xiàn)打分。打分的實(shí)質(zhì)就是對(duì)數(shù)據(jù)庫的電 影表進(jìn)行更新操作,更新其得分字段。打分成功后會(huì)有消息提示用戶的打分值,在 onrate( )方法中調(diào)用 FaceContext.getCurrentInstance( ).addMessage( )方法實(shí)現(xiàn)消息提示。 b添加影評(píng) 第 16 頁 共 46 頁 影評(píng)的添加實(shí)質(zhì)上就是在數(shù)據(jù)庫中影評(píng)表里插入一條記錄的操作。使用 盛放用戶輸入的評(píng)論,該控件與 criticismBean.criDescribe(

43、criDescribe 屬性為影評(píng)字段)綁定。提交按鈕與 criticismBean.fCriticismInsert 綁定,且設(shè)置提交按 鈕的 ajax 值為真,更行對(duì)象為整個(gè)表單,實(shí)現(xiàn)動(dòng)態(tài)刷新,提交評(píng)論后就能立刻看到自 己的評(píng)論。點(diǎn)擊提交按鈕后觸發(fā) CriticismBean 類的 public void fCriticismInsert()方法, 該方法中又嵌套調(diào)用 CriticismDao 類中的 public int filmCriInsertByid(int filmId, String criDescribe)方法,filmId 通過 getSessionValue()方法得到,

44、criDescribe 通過綁定的 前臺(tái)控件傳入。 4.1.5 禮品兌換功能 用戶登錄成功后,點(diǎn)擊禮品兌換選項(xiàng)卡進(jìn)入禮品列表頁面,此選項(xiàng)卡使用 PrimeFaces 的控件實(shí)現(xiàn)。用戶每兌換一次禮品前進(jìn)行用戶的積分檢測,積 分符合則實(shí)現(xiàn)兌換,用戶的積分要相應(yīng)的減少,對(duì)數(shù)據(jù)庫中禮品兌換單表插入一天兌 換記錄。giftBean 是管理禮品的托管 Bean,集合 allgifts 是其屬性之一,表示所有禮品 的集合,通過 GiftDao 類中的 findAllGifts()方法返回,該方法實(shí)質(zhì)就是對(duì)數(shù)據(jù)庫進(jìn) 行一次查詢操作。在前臺(tái)頁面中使用 PrimeFaces 的 dataGrid 控件來盛放該集合

45、,與 dataTable 相似,var 屬性也表示集合中的一個(gè)元素。兌換按鈕的 actionListener 值為 #giftBean.giftExchange,ajax 值為真,更新對(duì)象為整個(gè)表單,這樣用戶兌換后就能立 刻看到剛才兌換的禮品(頁面動(dòng)態(tài)刷新具體實(shí)現(xiàn)見 4.4) 。點(diǎn)擊兌換按鈕后觸發(fā) GiftBean 類的 giftExchange(ActionEvent event)方法。在該方法中,首先通過 session 得到用戶積分,將該積分與禮品所需積分對(duì)比,少于則提示積分不足,多余則先后調(diào) 用 GiftDao 類中 public String exchange(int userId,

46、int giftId,String giftName,String giftPicture)和 public void userScoreDivid(int requiredScore,int userId)兩個(gè)方法,其中 giftId,giftName,giftPicture,requiredScore 通過兌換按鈕下的得到,userId 通過 session 得到。 4.1.5 用戶訂/退功能 a用戶訂票 第 17 頁 共 46 頁 userdetail.xhtml:xhtmluserBean:UserBeanfilmBean:FilmBeanfilmdao:FilmDao getFilm

47、s() findFilm() selectedFilm(ActionEvent) buyticket.xhtml:xhtml selectById(int) subscribBean:SubscribBeansubsdao:SubscribDao getAllSeats() findSelectedSeats(int) findSeats() buyTicket(ActionEvent) getSessionValue(String) addSubscrib(int, int, String, String,String) filmTicketsDivid(int) userScoreAdd(

48、int) 圖 4.5 用戶訂票時(shí)序圖 用戶登錄成功后點(diǎn)擊訂票選項(xiàng)卡進(jìn)入有訂票功能的電影列表。該列表由 PrimeFaces 的 dataGrid 盛放。訂票操作實(shí)質(zhì)上是對(duì)數(shù)據(jù)庫中三個(gè)表的操作:對(duì)訂單表 插入一條訂單記錄,對(duì)電影表的余票字段進(jìn)行減量更新,對(duì)用戶表的用戶積分字段進(jìn) 行增量更新。點(diǎn)擊訂票按鈕后跳轉(zhuǎn)到 buyticket(訂票)頁面,將該電影編號(hào)傳入此頁 面(頁面?zhèn)髦翟敿?xì)實(shí)現(xiàn)見 4.4) ,該頁面根據(jù)電影余票數(shù)動(dòng)態(tài)生成座位號(hào)(生成座位號(hào) 詳細(xì)實(shí)現(xiàn)見 4.4) ,即已訂走的座位號(hào)不再出現(xiàn)。每個(gè)座位號(hào)是一個(gè)按鈕,點(diǎn)擊按鈕生 成一個(gè)訂單,該按鈕 actionListener 屬性與 subs

49、cribBean.buyTicket 綁定,點(diǎn)擊座位號(hào)按 鈕觸發(fā) SubscribBean 類的 public void buyTicket(ActionEvent event)方法,在該方法中首 先嵌套調(diào)用 FilmDao 類的 public int ticketCounts(int filmId)方法檢測電影余票數(shù),有 余票則先后調(diào)用 SubscribBean 類的 public String addSubscrib(int userId,int filmId,String subsTime,int seatNum,String filmName),public void filmTick

50、etsDivid(int filmId)和 public void userScoreAdd(int userId)方法。其中 filmId,filmName,userId 通過 session 得到, seatNum 通過座位號(hào)按鈕下的得到,subsTime 是下單時(shí)間,通過調(diào)用 第 18 頁 共 46 頁 GidtDao.nowTime()方法得到當(dāng)前系統(tǒng)時(shí)間(詳細(xì)實(shí)現(xiàn)見 4.4) 。時(shí)序圖見圖 4.5 所示。 b用戶退票 userdetail.xhtml:xhtmlsubscribBean:SubscribBeansubsdao:SubscribDaofilmBean:FilmBean

51、deleteSub(ActionEvent) getSessionValue(String) deleteSub(int) filmTicketsAdd(int) userScoreDivid(int) 圖 4.6 用戶退票時(shí)序圖 用戶登錄成功后會(huì)進(jìn)入用戶詳情界面,其中包括用戶訂單列表,可對(duì)該列表進(jìn)行 刪除行的操作。刪除訂單的實(shí)質(zhì)就是對(duì)數(shù)據(jù)庫的訂單表進(jìn)行刪除操作,對(duì)用戶表的用 戶積分字段值進(jìn)行減量更新,對(duì)電影表的余票數(shù)字段值進(jìn)行增量更新。使用 PrimeFaces 的 dataTable 控件盛放該用戶訂單的集合,由 SubscribDao 類的 public List findAllSubs

52、(int userId)方法返回。其中 userId 通過 session 得到,即 通過用戶編號(hào)從數(shù)據(jù)庫的訂單表中選出對(duì)應(yīng)用戶的所有訂單。刪除按鈕同 subscribBean.deleteSub 綁定,及點(diǎn)擊刪除按鈕后調(diào)用 SubscribBean 的 public void deleteSub(ActionEvent event)方法,在該方法中先后調(diào)用 SubscribDao 類的 public void deleteSub( String subId )方法,public void filmTicketsAdd( int filmId )方法和 public void userScor

53、eDivid ( int userId )方法。其中 subId 和 filmId 通過刪除按鈕下的得 到,userId 通過 session 得到。時(shí)序圖如圖 4.6 所示。 4.24.2 管理員功能的設(shè)計(jì)管理員功能的設(shè)計(jì) 4.2.1 管理員登錄功能 同用戶登錄相似。不同的是管理員登錄時(shí)調(diào)用 UserBean 類中的 public String checkLogin()方法,在此方法中嵌套調(diào)用 UserDao 類中的 public String findMUers(String userName,String passWord)方法,該方法中調(diào)用了 setSessionValue()方法,將

54、管理員編號(hào)與身份代碼保存到 session 中,供修改個(gè)人信 息和刪除操作時(shí)用。此方法中加上了身份代碼的驗(yàn)證條件(管理員的身份代碼為 1 或 2) ,通過驗(yàn)證則登錄成功。 第 19 頁 共 46 頁 4.2.2 電影信息管理功能 電影信息管理功能分為添加電影,修改電影信息,刪除電影,添加電影分類,和 刪除分類。 a添加電影 電影名稱(filmName) ,電影效果(is3D) ,電影分類 (category1,category2,category3) ,代售票數(shù)(ticketCount) ,上映日期(filmTime) 都使用輸入,電影簡介(filmDescribe)使用輸入,這些 控件分別與

55、 filmBean 的相應(yīng)屬性綁定。電影的海報(bào)添加要使用文件上傳功能,由 PrimeFaces 的 fileUpload 控件實(shí)現(xiàn)(詳細(xì)實(shí)現(xiàn)見 4.4) 。添加按鈕與 filmBean.filmInsert 綁定,點(diǎn)擊添加按鈕觸發(fā) FilmBean 類的 public void filmInsert()方法,在此方法中嵌 套調(diào)用 FilmDao 類中的 public int filmInsert(String filmName,String is3D,String category1,String category2,String category3,String filmPicture,St

56、ring filmDescribe,String filmTime,int ticketCount)方法,其中的參數(shù)都有前臺(tái)綁定的 filmBean 的屬性值得到。添 加成功或失敗都有相應(yīng)的消息提示,設(shè)置添加按鈕的 ajax 屬性值為真,更新對(duì)象為相 應(yīng)消息提示框。時(shí)序圖如圖 4.7 所示。 filminsert.xhtml:xhtmlfilmBean:FilmBeanfilmdao:FilmDaoFaceContext filmInsert() filmInsert(String,String,String,String ,String,String,String,String,int) a

57、ddMessage(String) 圖 4.7 添加電影時(shí)序圖 b修改電影信息 該功能就是根據(jù)前臺(tái)頁面?zhèn)鱽淼?filmId 查到電影表的一條記錄,對(duì)該記錄進(jìn)行更 新操作。電影列表由盛放,每條記錄后有一個(gè)修改按鈕,此修改按鈕下 的將 filmId 傳入后臺(tái),通過 filmId 選出要修改的電影的詳細(xì)表單,管理員 能夠修改電影名稱(filmName) ,電影效果(is3D) ,電影分類 (category1,category2,category3) ,代售票數(shù)(ticketCount) ,上映日期(filmTime) , 電影簡介(filmDescribe) ,這些字段與前臺(tái)綁定,且在這些字段的

58、set 方 法中調(diào)用 setSessionValue() ,進(jìn)行修改后,通過 session 獲取新值。點(diǎn)擊保存按鈕后觸 發(fā) FilmBean 類的 public void filmUpdate(ActionEvent event)方法,其中嵌套調(diào)用 第 20 頁 共 46 頁 FilmDao 類的 public int filmUpdateById(String filmName,String is3D,String category1,String category2,String category3,String filmPicture,String filmDescribe,Strin

59、g filmTime,int filmId)方法,除 filmId 外其他參數(shù)由 getSessionValue()方法得到,filmId 由保存按鈕下的得到。 c刪除電影 該功能實(shí)質(zhì)是根據(jù) filmId 刪除數(shù)據(jù)庫中電影表的一條記錄。電影列表由 盛放,dataTable 的 value 值為#filmBean.films,films 為所有電影的集合, 由 FilmDao 類的 public List findFilm()方法返回。dataTable 中每條電影記錄 后都有一個(gè)刪除按鈕,該按鈕與 filmBean.filmDelete 綁定,點(diǎn)擊后觸發(fā) FilmBean 類的 public

60、void filmDelete(ActionEvent event)方法,該方法中嵌套調(diào)用 public void filmDeleteByID(int filmId)方法,filmId 有刪除按鈕下的得到。刪除后頁面使 用 ajax 進(jìn)行動(dòng)態(tài)刷新。 d添加電影分類 電影分類由托管 Bean:allfCategoryBean 管理。頁面的與 allfCategoryBean.fcategory 綁定,點(diǎn)擊添加按鈕觸發(fā) AllfCategoryBean 類的 public void categoryInsert() 方法,該方法中嵌套調(diào)用 AllfCategoryDao 類的 public in

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論