




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
關于夢境的APP技術實現方案(WEB端)指導老師:張修軍隊名:微積分(Calculus)團隊隊員:魏裔龍劉海文孫天松劉剛紀陽徐凱平時間:2016-03-26目錄TOC\o"1-5"\h\z\o"CurrentDocument"1.WEB1端技術 3\o"CurrentDocument"WEB端技術路線 3\o"CurrentDocument"MVC模式 3\o"CurrentDocument"1.1.2WEB架構 4\o"CurrentDocument"WEB端實現方案 7\o"CurrentDocument"1.2.1通信協議 7\o"CurrentDocument"1.2.2數據處理 8\o"CurrentDocument"1.2.3數據調用基本過程 9\o"CurrentDocument"數據庫 10\o"CurrentDocument"2.1數據庫技術 10\o"CurrentDocument"2.1.1數據庫技術路線 10\o"CurrentDocument"2.2數據庫實現方案 11\o"CurrentDocument"2.2.1數據庫的連接 11\o"CurrentDocument"2.2.2解決數據量大的問題 12\o"CurrentDocument"2.2.3備份與恢復 13\o"CurrentDocument"采用技術 14\o"CurrentDocument".PHP的特性 14\o"CurrentDocument"?優勢 14\o"CurrentDocument"3.3數據庫 15111
1.WEB端技術WEB端技術路線MVC模式WEB端主體框架采用MVC的設計模式,通過視圖、控制器、模型的分離減少了代碼的耦合度,由于MVC模式的三個模塊相互獨立,改變其中一個不會影響其他兩個,所以依據這種設計思想能構造良好的少互擾性的構件。圖3-2MVC模式1.1.2WEB架構業務層業務層WEB應用系統大多采用J2EE(Java2PlatformEnterpriseEdition )的多層框架結構模型,WEB應用框架技術是一種針對某一特定應用領域的面向對象軟件復用技術由特定應用領域的軟件體系結構所決定的軟件構架。我們將使用J2EE三個比較受歡迎的開源框架SSH來實現web功能。SSH為struts+spring+hibernate 的一個集成框架,是目前較流行的一種Web應用程序開源框架。集成SSH框架的系統從職責上分為四層:表示層、業務邏輯層、數據持久層和域模塊層Struts框架Struts框架是基于MVC(Model-View-Controller ,模型視圖控制器)模式的框架。采用Java語言編寫,它繼承了MVC設計模式的特性,對應用系統的用戶界面顯示和數據的后端業務邏輯代碼進行了抽象,并且整合了 Servlet與JSP在WEB應用系統開發上的優勢。在Struts框架中,模型由實現業務邏輯的JavaBean組件構成,控制器由Action以及Struts-config.xml 配置文件來實現,視圖由一組JSP文件構成。Spring框架Spring框架由一個容器、一個配置和組織組件的框架,一組內置的為事務、持久化和WEB用戶接口提供的服務組成,是一個輕量的控制反轉((InversionofControl,loC)和面向方面(Aspect-orientedProgramming,AOP)的容器框架:輕量:完整的Spring框架可在一個大小1MB多的JAR文件里發布,并且Spring所需的處理開銷也很小。控制反轉:Spring通過一種稱作控制反轉(IoC)的技術促進了松耦合。控制反轉就是指由容器通過配置文件來管理業務對象之間的依賴關系,而非傳統方式中由代碼方式來直接操控。控制反轉的實質,是控制管理權由程序代碼轉到了外部容器,控制權的轉變即是所謂的反轉。面向方面:Spring包含對面向方面編程的豐富支持,允許通過分離應用的業務邏輯與系統服務進行內聚性的開發。應用對象只做它們應該做的,完成業務邏輯,并不負責其它的系統關注點。容器:Spring包含管理應用對象的配置和生命周期,可以配置每個 bean如何被創建。框架:Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里,Spring提供了很多基礎功能(事務管理、持久性框架集成等等),并留有應用邏輯開發。Hibernate框架Hibernate是一種Java語言環境下的對象/關系映射(Object-Relational,OR)解決方案。它為面向對象的實體模型到關系型數據庫之間的映射,提供了一個極為方便的開源框架。Hibernate使用數據庫和配置文件來為應用程序提供持久化(持久化是指和數據庫相關的各種操作)服務。Hibernate配置文件有兩種格式:一種是XML格式的文件Hibernate.cfg.xml,—種是Java屬性文件Hibernate.Properties ,采用"鍵=值"的形式。在應用系統的開發中,Hibernate配置文件中包含了JDBC連接數據庫的驅動信息。在應用程序訪問數據庫時,首先讀取 Hibernate配置文件,再通過配置文件找到持久化類的XML映射文件,根據該映射文件得到相應的持久化類,從而可以對類進行操作。也就是將持久化對象中的屬性與數據庫表中的字段對應起來。通過持久化對象完成對數據庫表中的數據的增加、修改、查詢和刪除操作。4) SSH框架協同工作整個項目結構清晰,性能優良。1.2WEB端實現方案1.2.1通信協議我們用HTTP協議實現客戶端與服務端的連接。HTTP協議是一種詳細規定了瀏覽器和萬維網服務器之間互相通信的規則,通過因特網傳送萬維網文檔的數據傳送協議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統。圖3-5XMPP協議XMPP是一種基于XML的協議,它繼承了在XML環境中靈活的發展性。因此,基于XMPP的應用具有超強的可擴展性。經過擴展以后的XMPP可以通過發送擴展的信息來處理用戶的需求,以及在XMPP的頂端建立如內容發布系統和基于地址的服務等應用程序。而且XMPP包含了針對服務器端的軟件協議,使之能與另一個進行通話,這使得開發者更容易建立客戶用應用程序或給一個配好系統添加功能。由于HTTP協議時需要客戶端發送請求,服務端才會發送數據,但我們系統中有如聊天系統等需要實施的功能使用http協議就不是很合適,因此我們還使用了XMPP協議配合HTML協議完成聊天功能以及系統活動、運動咨詢和定點廣告的推送功能。1.2.2數據處理1.字符數據處理JSON(JavaScriptObjectNotation) 是一種輕量級的數據交換格式。JSON采用完全獨立于語言的文本格式,但是也使用了類似于 C語言家族的習慣(包括C,C++,C#,Java,JavaScript,Perl,Python 等)。這些特性使JSON成為理想的數據交換語言。易于人閱讀和編寫,同時也易于機器解析和生成123數據調用基本過程數據庫2.1數據庫技術2.1.1數據庫技術路線JDBC(JavaDataBaseConnectivity,java數據庫連接)是一種用于執行SQL語句的JavaAPI,可以為多種關系數據庫提供統一訪問,它由一組用 Java語言編寫的類和接口組成。JDBC為工具/數據庫開發人員提供了一個標準的API,據此可以構建更高級的工具和接口,使數據庫開發人員能夠用純 JavaAPI編寫數據庫應用程序。2.2數據庫實現方案221數據庫的連接與數據庫建立連接的標準方法是調用 DriverManager.getConnection方法。該方法接受含有某個 URL的字符串。DriverManager 類(即所謂的JDBC管理層)將嘗試找到可與那個 URL所代表的數據庫進行連接的驅動程序。DriverManager 類存有已注冊的Driver類的清單。當調用方法getConnection 時,它將檢查清單中的每個驅動程序,直到找到可與 URL中指定的數據庫進行連接的驅動程序為止。 Driver的方法connect使用這個URL來建立實際的連接。 用戶可繞過JDBC管理層直接調用Driver方法。這在以下特殊情況下將很有用:當兩個驅動器可同時連接到數據庫中,而用戶需要明確地選用其中特定的驅動器。但一般情況下,讓DriverManager 類處理打開連接這種事將更為簡單。222解決數據量大的問題圖4-3數據庫數據量與性能的關系圖隨著用戶的增加,每個人上傳的圖片等的數據量將會在服務器越積越多,導致性能下降。但是每個人的資料信息以及上傳的圖片又不能刪除,給服務器帶來了很大的壓力。為了處理多用戶量的問題我們在后期決定使用分布式多服務器分工合作原理,解決大數據量帶來的壓力。223備份與恢復備份2備份2OlliC注解V工隹丟喪鳳時圖4-5數據庫備份圖備份策略一:直接拷貝數據庫文件直接拷貝數據文件最為直接、快速、方便,但缺點是基本上不能實現增量備份。為了保證數據的一致性,需要在備份文件前,執行以下 sql語句:flushtableswithreadlock;也就是把內存中的數據都刷新到磁盤中,同時鎖定數據表,以保證拷貝過程中不會有新的數據寫入。這種方法備份出來的數據恢復也很簡單,直接拷貝回原來的數據庫目錄下即可。備份策略二:使用mysqlhotcopy 備份數據庫mysqlhotcopy是一個perl程序,最初由timbunce編寫。它使用locktables、flushtables和cp或scp來快速備份數據庫。它是備份數據庫或單個表的最快的途徑,但它只能運行在數據庫文件(包括數據表定義文件、數據文件、索引文件)所在的機器上,并且 mysqlhotcopy 只能用于備份myisam表。本備份策略適合于小型數據庫的備份,數據量不大,可以采用 mysqlhotcopy程序每天進行一次完全備份。采用技術.PHP的特性PHP獨特的語法混合了C、Java、Perl以及PHP自創新的語法。PHP可以比CGI或者Perl更快速的執行動態網頁一一動態頁面方面,與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成htmL標記的CGI要高許多;PHP具有非常強大的功能,所有的CGI的功能PHP都能實現。PHP支持幾乎所有流行的數據庫以及操作系統。最重要的是PHP可以用C、C++進行程序的擴展!.優勢1?開放源代碼所有的PHP源代碼事實上都可以得到。2?免費性和其它技術相比,PHP本身免費且是開源代碼。3?快捷性程序開發快,運行快,技術本身學習快。嵌入于HTML:因為PHP可以被嵌入于HTML語言,它相對于其他語言。編輯簡單,實用性強,更適合初跨平臺性強由于PHP是運行在服務器端的 腳本,可以運行在 UNIX、LINUX、WINDOWS、MacOS、Android等平臺效率咼PHP消耗相當少的系統資源。圖像處理用PHP動態創建圖像,PHP圖像處理默認使用GD2。且也可以配置為使用imagemagick進行圖像處理。面向對象在php4,php5中,面向對象方面都有了很大的改進,php完全可以用來開發大型商業程序。專業專注PHP支持腳本語言為主,同為類C語言。3.3數據庫數據庫采用MySQL,作為一個小型關系數據庫管理系統,它體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,這使得許多中小型網站為了降低網站總體擁有成本而選擇了MySQL作為網站數據庫。Mysql擁有許多優良特性:使用C和C++編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多種操作系統3?為多種編程語言提供了AP
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 黑龍江省雙鴨山市名校2025年中考仿真模擬卷(二)英語試題含答案
- 上海交通職業技術學院《寵物疾病學》2023-2024學年第二學期期末試卷
- 山西省大同市云岡區翰林學校2025屆數學五下期末考試模擬試題含答案
- 鄭州美術學院《機器人視覺技術》2023-2024學年第二學期期末試卷
- 新疆工程學院《魏晉人物與文化》2023-2024學年第一學期期末試卷
- 江蘇省東臺市第二教育聯盟重點達標名校2025屆初三5月第四次測評化學試題含解析
- 浙江省杭州市富陽區2025年初三質量檢查化學試題含解析
- 民辦安徽旅游職業學院《物料與能量衡算原理》2023-2024學年第二學期期末試卷
- 江蘇第二師范學院《財務管理學》2023-2024學年第二學期期末試卷
- 三亞航空旅游職業學院《生物制藥大實驗》2023-2024學年第二學期期末試卷
- 保安上墻制度
- T-KTSDN 2401-2024 地面供暖系統清洗維保操作技術服務規范
- 2025年建投國電準格爾旗能源有限公司招聘筆試參考題庫含答案解析
- 2025年鶴壁汽車工程職業學院單招職業技能考試題庫匯編
- 第11課《山地回憶》課件-2024-2025學年統編版語文七年級下冊
- 水電站安全生產培訓
- 2025年焦作大學高職單招職業技能測試近5年常考版參考題庫含答案解析
- 醫院感染的分類及定義
- 2025年國家藥品監督管理局特殊藥品檢查中心招聘6人歷年高頻重點提升(共500題)附帶答案詳解
- 蘭州鐵路局招聘筆試沖刺題2025
- 2025銀行協議存款合同
評論
0/150
提交評論