美章網 資料文庫 古建筑文物展示平臺研究范文

    古建筑文物展示平臺研究范文

    本站小編為你精心準備了古建筑文物展示平臺研究參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。

    古建筑文物展示平臺研究

    摘要

    由于傳統古建筑文物展示方式無法滿足當前國內外參觀者的需求,因此本文源于MVC思想和經典三層架構提出了一種新的六層架構分層模型,即表示層、控制層、域模型層、業務邏輯層、數據持久層和數據層,并將S2SH輕量級框架技術和Ajax前端技術融合到各層構建了古建筑文物展示平臺的架構,然后結合Web3D等技術實現了該平臺。實際開發表明,基于該分層模型所構建的古建筑文物展示平臺具有良好的擴展性、維護性和交互性,有效改變了古建筑文物的傳播方式,讓國內外參觀者足不出戶就能欣賞到中國各地著名的古建筑文物。

    關鍵詞

    六層架構;古建筑文物;MVC思想;AS2SH;設計與實現

    古建筑文物是歷史文化的載體,也是歷史文明最真實的記錄,它作為中華民族五千年歷史的見證者,不僅具有較高的藝術價值和文化價值,還標志著中國歷史的發展與進步以及古人的智慧和才能,如綿延萬里的長城,建于隋代的安濟橋,明清兩代的故宮,成都的武侯祠,達州的渠縣漢闕等。可以毫不過分地說古建筑文物的造型在一定程度上體現了一個國家的國力,自然應該使用現代新興技術加以展示、推廣和傳承,讓更多國內外人士了解和認識中國各式各樣的古建筑文物及歷史文化[1]。然而,傳統古建筑文物的展示方式由于受到時間和空間限制已經無法滿足現代國內外參觀者的需求,伴隨著現代信息傳播方式的發展,古建筑文物網站、數字化古建筑文物、虛擬古建筑文物以及智慧古建筑文物等正在探索與實踐。本文采用一種改進的Web分層模型,并有效結合Ajax、S2SH和XML等主流技術,同時融合Web3D虛擬現實等技術一起來構建古建筑文物展示平臺,其目的是使古建筑文物傳播方式有跨越式的進步,讓國內外參觀者足不出戶就能欣賞到中國各地著名的古建筑文物,并有身臨其境的感受。

    1分層模型設計

    目前主流的軟件體系架構是三層架構,即表示層、業務邏輯層和數據訪問層,這種典型的三層架構只適用于小規模的軟件開發,而對于中大規模軟件研究及開發已經力不從心[2]。為了充分體現軟件分而治之的設計理念,實現軟件高內聚低耦合的目標,本文將MVC思想和經典三層架構有效結合起來,構建了六層Web應用架構的分層模型,即表示層、控制層、域模型層、業務邏輯層、數據持久層、數據層,具體如圖1所示。在此分層模型中表示層負責與用戶交互,并把用戶提交的請求信息傳遞給控制層;控制層負責對傳遞過來的用戶請求進行分發派遣,但它不包含任何業務邏輯處理;而業務邏輯層則專門用于實現具體的業務邏輯功能;數據持久層用于建立和管理數據庫連接,完成對數據的CRUD操作;而底層的數據層則實現對數據記錄的存儲管理;域模型層用于對傳遞在不同層之間的數據進行封裝,實現數據粗粒度傳遞。并且該分層模型融入Ajax的Web應用模型設計思想,采用異步通信方式,有力提高了數據訪問效率[3]。同時,每一層對上層提供服務,對下層也是一個服務的對象,各層之間有條不紊地協助完成任務。

    2古建筑文物展示平臺設計

    2.1平臺層次架構設計軟件體系架構是構建軟件系統的基礎,是一系列相關軟件結構設計的抽象模式,用于指導軟件系統各個方面的設計[4][5]。本文基于上述所設計的分層模型,將古建筑文物展示平臺的架構設計如下圖2所示。其中通過Html或JSP來完成古建筑文物展示平臺的表示層,并將Css/Div、JavaScript、DOM、XMLHttp等Ajax前端技術融合進來,實現了請求信息的異步處理和頁面動態局部更新,進而增強用戶體驗[6];而展示平臺的控制層使用Struts2輕量級框架技術來負責,完成對用戶請求的轉發工作;業務邏輯層通過Spring的IoC容器來有效管理業務Bean,并簡化JavaBean代碼的編寫;同時,展示平臺的數據持久層使用基于ORM思想的Hibernate來進行,以純粹的面向對象的方式來訪問關系數據庫;而數據層則通過常用的關系數據庫工具SQLServer來完成,最后的域模型層使用簡單的POJO來封裝[7]。這樣的分層設計實現了軟件的合理分工,進而使古建筑文物展示平臺后期的開發和維護工作更為方便、快捷。

    2.2平臺功能模塊設計本古建筑文物展示平臺主要由兩部分構成,一部分是前臺,另一部則為后臺。其中前臺是面向普通用戶提供的服務,主要有欣賞古建筑文物,漫游古建筑文物,在線觀賞古建筑文物視頻以及對古建筑文物進行評論等功能;后臺主要完成對古建筑文物信息的管理,包括資料管理,場景漫游管理,視頻和新聞信息管理等,以及通過推薦算法實現主動為不同用戶推薦其可能喜好的古建筑文物等,具體功能模塊設計如下圖3所示。其中,頁面基類子模塊包括了用戶基本信息、模塊權限驗證和頁面錯誤處理,模塊權限驗證主要是驗證不同模塊的權限,并將其分配給不同權限的用戶,而頁面錯誤處理是對訪問出錯的頁面進行統一的跳轉處理。普通用戶子模塊中古建筑文物百科是對古建筑文物相關文化知識進行介紹,使用戶對古建筑文物有初步的了解和認識;古建筑文物欣賞是讓用戶多角度全方位來觀賞各種各樣的古建筑文物;古建筑文物查詢能實現用戶對自己感興趣的古建筑文物查詢,可以進行關鍵字查詢或者模糊查詢等;古建筑文物評論是指當用戶觀賞完古建筑文物后可以通過文字或者語音方式來發表自己的評論等。管理員子模塊除了包含對古建筑文物相關內容的管理外還包含了對用戶信息和權限的分配管理等。而且本平臺功能設計的最大特色在于加入了古建筑文物全景漫游功能以及主動推薦服務功能,這樣使身處世界各地的參觀者足不出戶就能快速地在線欣賞甚至漫游自己喜好的中國古建筑文物,實現與中國古建筑文物及文化零距離的接觸。

    3古建筑文物展示平臺實現

    開發本古建筑文物展示平臺所需硬件配置主要包括高檔微機(基本要求為CPU類型:酷睿i7處理器,主頻:2.0GHz,內存類型:DDR3,內存容量:4GB,獨立顯卡,且顯存容量獨立2GB)、數碼相機(或全景拍攝器)、掃描儀(或數字化儀)等。軟件配置為MicrosoftWindows8,SQLServer2008以及S2SH框架所需的環境,如JKD1.7,MyEclipse8.5,Struts2,Spring2,Hibernate3,jQuery2.1,Tomcat6.0等,還有其他一些軟件,如MicrosoftExcel2010,Photoshop6,Dreamweaver8、Flash10、PanoramaStudioProV2等。平臺的具體實現過程按照上述設計思路依次進行,其中域模型層使用POJO類來實現對各類數據的封裝,該類只含有與之對應的屬性及get/set方法,而數據層則使用傳統的關系數據庫SQLServer2008來實現對數據的存儲管理,以下主要論述六層中關鍵的四層即表示層、控制層、業務邏輯層和數據持久層的具體實現。

    3.1平臺表示層實現本平臺的表示層主要通過Ajax及JSP技術來實現,其中Ajax是一種新的創建交互式網頁應用的網頁開發技術,這種技術通過在客戶端和服務器間傳輸少量的數據,可以使網頁實現異步更新,這意味著可以在不重新加載整個頁面的情況下對網頁的某部分進行更新,即所謂的局部更新,進而為用戶提供更及時的體驗,它本質是一種RIA的應用,但不是一種新的編程語言,其核心是JavaScript對象XmlHttp[8]。因此本平臺的前端頁面主要使用Ajax,并且使用jQuery.ajax()方法很好地實現前端和后臺的異步通信,避免了同步通信停滯等待的情況發生。而JSP是一種動態頁面技術,它主要目的是將表示邏輯從Servlet中分離出來,其根本是一個簡化了的Servlet設計,所以本平臺后臺的表示邏輯則使用它來完成。并且為了讓參觀者能在線欣賞古建筑文物全景,增強用戶體驗,本文有效融合Web3D前端技術實現了古建筑文物三維場景漫游,其核心代碼。

    3.2平臺控制層實現Struts2是Apache提供的一個開源框架,是在Struts1和WebWork的技術基礎上進行合并的全新的MVC框架,并允許使用普通的、傳統的Java對象作為Action,因此Action編寫簡單而且易于測試[9]。它底層以WebWork為核心,采用基于AOP思想的攔截器機制來處理用戶的請求,這樣的設計使得業務邏輯控制器能夠與ServletAPI完全脫離開,因此本平臺的業務邏輯控制部分即控制層使用Struts2來完成。而且Struts2具有更強大、更易用的輸入驗證功能,并能很好支持多種表示層技術(如Ajax、JSP等),所以它能有效將本平臺的表示層和控制層進行集成,有機地實現兩層之間的數據通信,如表示層中用戶登陸時發送的身份校驗信息進入控制層后進行處理的重要代碼。

    3.3平臺業務邏輯層實現Spring是目前主流一種輕量級應用程序框架,由RodJohnson在其著作ExpertOne-OneJ2EEDevelopmentandDesign中闡述的部分理念和原型衍生而來,它由SpringCore、SpringAOP、SpringContext、SpringDAO、SpringORM、SpringWeb和SpringWebMVC七個模塊組成,其中最核心的是SpringCore模塊。Spring框架目的是簡化傳統J2EE開發過程,讓開發者只關注業務邏輯,而不是框架本身,其首要目標是讓用戶使用POJO作為工作重心,而不是如EJB特殊對象等,通過使用POJO來完成以前只能由EJB完成的事情,因此它的重要精髓在于能夠使用POJO參與到企業服務當中[11]。而且Spring的最重要作用是使用一致、高效的方法開發應用程序,并整合各種優秀的框架(如Struts2或Hibernate),使之能夠在統一框架中開發優秀的應用程序。由于Spring是一種應用程序框架,因此它貫穿于整個應用程序的各個層面當中,在整個展示平臺及六層架構模型中都起到舉足輕重的作用,其主要任務是簡化業務邏輯Bean的編寫及對他們的有效管理,其關鍵配置信息如下。

    3.4平臺數據持久層實現Hibernate是一個開放源代碼的ORM框架技術,它實現對象和數據庫表、對象屬性和數據庫表列的映射,并實現它們之間的自動轉換工作[13]。Hibernate內部其實輕量級地封裝了JDBC操作,實現底層對關系數據庫的讀寫,上層提供了對實體對象保存、更新、刪除、檢索的面向對象的API,這樣使得開發人員可以隨心所欲地使用對象編程思維來操作關系數據庫。而且Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是Hibernate可以在應用EJB的J2EE架構中取代CMP,進而完成數據持久化的重任[14]。由此可見,Hibernate成功地實現透明持久化,并以面向對象的HQL封裝SQL,為開發人員提供了一個簡潔靈活且面向對象的數據訪問接口,所以本平臺使用Hibernate實現持久層,使得開發人員以面向對象的思想進行持久化工作,而不需在對象模型和關系模型之間轉換思維,而這種轉換則由映射文件自動完成,其中古建筑文物AntiqueBuilding.hbm.xml核心配置如下。

    4結語

    對古建筑文物進行展示、保護及傳承是一項復雜而艱巨的工作,目前文物工作者及研究人員主要通過手工人為的方式展開工作,這樣不僅消耗了大量的人力和物力,而且效果不明顯。本文利用分層設計思想,將傳統的Web三層架構擴展為六層模型,并有效結合AS2SH等主流技術構建并實現了古建筑文物展示平臺。實際開發證明,根據該分層模型得到的多層古建筑文物展示平臺與傳統的三層模型比較具有更好的交互性、擴展性和維護性,同時簡化了程序代碼編寫,縮短了軟件開發時間,提高了軟件開發質量,具體數據如下表1所示。而且,所開發的平臺符合當前古建筑愛好者的需求,讓愛好者們足不出戶就能通過互聯網欣賞到自己喜歡的古建筑文物,這不僅對古建筑文物起到推廣宣傳作用,而且也為保護和傳承古建筑文物奠定了基礎。

    作者:梁弼 劉篤晉 單位:四川文理學院計算機學院

    主站蜘蛛池模板: 美日韩一区二区三区| 精品福利一区二区三区免费视频| 在线观看精品视频一区二区三区 | 久久久国产精品亚洲一区| 人妻久久久一区二区三区| 中文字幕一区一区三区| 怡红院一区二区在线观看| 日本免费一区二区三区四区五六区 | 国产精品无码一区二区三区免费 | 一区二区三区高清视频在线观看| 福利一区二区三区视频午夜观看| 亚洲一区动漫卡通在线播放| 亚洲AV香蕉一区区二区三区| 国产波霸爆乳一区二区| 精品国产一区二区三区AV| 消息称老熟妇乱视频一区二区| 美女视频黄a视频全免费网站一区| 亚洲AV美女一区二区三区| 一本色道久久综合一区| 中文字幕日韩一区| 久久久久久免费一区二区三区| 成人在线一区二区| 日韩福利视频一区| 国产伦精品一区二区三区在线观看| 中文字幕一区二区精品区| 91福利一区二区| 国产欧美色一区二区三区| 日韩精品一区二区亚洲AV观看 | 夜夜添无码试看一区二区三区| 精品国产日韩亚洲一区在线| 男插女高潮一区二区| 99精品国产高清一区二区| 亚洲中文字幕在线无码一区二区| 亚洲福利视频一区二区| 东京热无码一区二区三区av| 一区二区三区四区电影视频在线观看| 国产高清视频一区二区| 亚洲视频在线一区二区| 国产伦精品一区二区三区| 无码人妻精品一区二区三区久久 | 国产精品视频一区麻豆|