- 人人都玩開心網:Ext JS+Android+SSH整合開發Web與移動SNS
- 李寧編著
- 2398字
- 2018-12-27 18:57:22
1.3 編程高手的預言:人人都有開心網
實際上,開心網就是一種SNS。現在網上有很多個人或小公司開發的開心網。雖然功能可能遠不如kaixin和kaixin001,但也不失為另一種選擇。為了滿足廣大開發人員開發類似開心網的SNS的需求,本書將介紹一個采用Ext JS及SSH技術實現的模擬Windows桌面的開心網系統,也可稱為開心桌面。由于篇幅所限,本書的開心網系統不可能做得像kaixin或kaixin001一樣復雜,但讀者可以利用本書介紹的技術及例子實現更復雜、更絢麗的功能。
1.3.1 自己搭建開心網:絢麗頁面先睹為快
雖然開心網系統的規模比較大,以個人之力想實現一個完整的開心網十分困難,但仍然可以選擇其中的幾項功能來實現,既學習了技術,還會有成就感。當然,如果能獲得利益就更好了。
本書要實現的開心網采用了Java及其相關的技術來實現,主要的開發工具是Eclipse for Java EE,讀者可以到http://www.eclipse.org下載最新的版本。
除了開發工具外,Web服務器采用了Tomcat 6.x,當然,讀者也可以很容易地將開心網移植到其他的Web(Java EE)服務器,例如,WebLogic、WebSphere、JBoss等。在具體的技術方法上采用了現在非常流行的Ajax客戶端框架Ext JS來實現Web頁面部分。后面的系統將采用SSH和三層結構來完成。其中SSH是Struts 2、Spring和Hibernate。這是三種很常用的框架。它們分別被用于MVC模式、IOC和數據操作。這些技術的詳細情況將在下一節介紹。下面來看一下我們將要搭建的開心網的一些絢麗的頁面。這些頁面如圖1.4、圖1.5和圖1.6所示。

圖1.4 主頁面

圖1.5 電子相冊

圖1.6 贈送禮物
1.3.2 萬丈高樓平地起:技術儲備
本書實現的開心網所采用的核心技術涉及Ext JS、Struts 2、Spring和Hibernate。由于篇幅所限,本書主要介紹Ext JS及SSH的整合技術。如果讀者想了解更多的關于Struts 2、Spring及Hibernate的知識,請參閱筆者所著的《Java Web開發速學寶典》一書。
開發開心網客戶端除了需要用到傳統的Web技術(HTML、CSS、Java Script等)外,還涉及近年來很流行的Ajax技術。自Ajax之父Jesse James Garrett于2005年提出這一新概念之后,這一沉睡了多年的技術,換上新衣,一下子變成Web應用程序中最為受寵的功能。經過將近5年的發展,Ajax技術在國際社區取得了很大的發展,已經比較成熟。Ajax發展至今,也誕生了很多優秀的框架,Ext JS就是其中的佼佼者。
在了解Ext JS之前,首先需要了解一下什么是YUI。
YUI(Yahoo! UI Library)是一個開源的JavaScript庫,與Ajax、DHTML和DOM等技術一起使用可以用于創建交互性極強的Web應用,它還包含豐富的CSS資源。
Ext JS最初是YUI的一個擴展,然而,它現在也可以擴展至JQuery和Prototype。自1.1版開始,Ext JS已經可以獨立運行,不需要依賴于那些外部庫,雖然它仍然可以和其他技術集成。現在,Ext 3.0版可以使用許多不同的基礎庫,例如YUI、JQuery和Prototype,甚至可以獨立的運行。
Ext JS是一個非常棒的Ajax框架,可以用來開發具有十分華麗外觀的富客戶端應用(從上一節的開心網頁面就可以看出這一點),能使B/S應用更加具有活力。它是一個用JavaScript編寫,與后臺技術無關的前端Ajax框架。因此,可以把Ext JS用在.NET、Java、PPH等各種語言開發的應用程序中。
SSH整合是開心網中涉及的另一項技術。Struts 2、Spring和Hibernate雖然都可以獨立運行(Struts 2只能用于Web應用,而Spring和Hibernate可以運行在任何類型的Java應用程序中)。但將三者有機地整合到一起會使程序更容易維護和升級(尤其對于大型的應用程序而言)。
Struts2的核心思想是MVC模式。利用Struts 2中的Action可以將客戶端頁面和服務端的程序分離,這樣更容易升級和維護。而Hibernate主要用于數據的持久化和ORM映射。利用Hibernate可以將數據表的記錄映射成Java對象,并且Hibernate提供了大量的功能來操作這些Java對象。而且這種映射是透明的,也就是說,開發人員可以在不修改代碼的前提下修改Hibernate所指向的數據庫類型,如從SQL Server切換成Oracle。
Spring的功能非常多,但主要的功能是通過XML配置文件來裝配Java Bean。其核心思想是控制反轉(Inversion of Control, IOC)模式。通過Spring可以將很多代碼放到XML文件中供其他程序復用,從而大大減少了工作量。
將Struts 2、Spring和Hibernate相結合就意味著開心網使用的是MVC模式,并且可以很容易地移植數據庫,還可以利用Spring實現自動裝載的功能。例如,當Action對象被創建時, Spring會根據XML文件的配置和Action類中的代碼來自動創建DAO或Service對象實例(這部分將在第2章詳細介紹)。
1.3.3 開心網的安裝和運行
在本節將介紹如何安裝和運行本書實現的開心網系統。首先在讀者的機器上應有JDK(1.5或以上版本)、Eclipse for Java EE(3.4或以上版本)、Tomcat(6.0或以上版本)和MySQL(5.0或以上版本)。這4個軟件的安裝非常容易(在安裝MySQL時root的密碼必須是1234)。安裝完這些軟件后,需要在Eclipse中配置Tomcat。單擊【Window】> 【Preferences】菜單項,打開【Preferences】對話框,在左側的選項樹中選中【Service】>【Runtime Environments】選項,單擊右側的【Add】按鈕,選擇Tomcat服務器,如圖1.7所示。
單擊【Next】按鈕,進入下一個頁面來設置Tomcat的安裝目錄,如圖1.8所示。

圖1.7 選擇Tomcat服務器

圖1.8 設置Tomcat的安裝目錄
在進行上面的設置后,【Server Runtime Environments】列表中會顯示剛才選擇的Tomcat服務器,如圖1.9所示。
除此之外,在【Server】視圖中也會顯示剛才選擇的Tomcat服務器,如果在服務器可發布的工程中沒有讀者需要發布的工程,可以通過單擊Tomcat服務器右鍵菜單的【Add and Remove Projects】菜單項來添加相應的Eclipse工程。如果想啟動、停止或調試Tomcat,單擊Tomcat服務器右鍵菜單中相應的菜單項即可。圖1.10是【Server】視圖中顯示相關工程的效果。

圖1.9 【Server Runtime Environments】列表

圖1.10 【Server】視圖
接下來在src目錄中找到script.txt文件,該文件保存了建立數據庫的腳本,復制該文件的內容,在MySQL的命令行控制臺中執行這些命令。
在進行完上面的操作后,可以將src目錄中的源代碼目錄導入到Eclipse中(最好將這些目錄復制到硬盤上)。操作的方法是在【File】菜單中選擇【Import】子菜單項,彈出【Import】對話框,按圖1.11所示選中導入項,并進入下一個頁面,如圖1.12所示。單擊【Browser】按鈕選擇要導入的工程目錄后,單擊【Finish】按鈕完成導入。

圖1.11 選擇要導入的項

圖1.12 選擇要導入的工程目錄
在導入相應的工程后,需要在【Servers】視圖的右鍵菜單中選擇【Add and Remove Projects】菜單項,在彈出的對話框左側選擇要運行的工程,將其放到右側的列表框中,如圖1.13所示。現在可以在Eclipse中啟動Tomcat,并運行程序了。本書實現的每一個例子的URL在相應的位置都已給出。讀者可以在閱讀到相應的位置時再運行對應的例子。

圖1.13 選擇要運行的工程
- 網站建設與網頁設計從入門到精通Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript
- 網頁設計實用教程
- After Effects CS6從入門到精通
- 眾妙之門:網站UI設計之道2
- 園區網互聯及網站建設
- 網頁設計與制作:HTML+CSS+JavaScript標準教程
- 眾妙之門:自由網站設計師成功之道
- HTML5+CSS3網頁設計與制作基礎教程
- HTML+CSS+JavaScript網頁制作案例教程(第2版)
- Illustrator平面設計180例五步通
- 社交網站界面設計(原書第2版)
- 淘寶店鋪頁面設計與裝修實戰教程
- Photoshop熱門手機APP與網頁游戲界面設計從入門到精通
- Highcharts網頁圖表制作實例詳解 (Web開發典藏大系)
- Web程序設計