GlassFish v 的目錄部署實戰
第步: 啟動 GlassFish v
第步: 部署 Sample 項目到 GlassFish v DOS窗口下執行命令:
GLASS_FISH_HOME/bin/asadmin deploydir D:/Sample
其中 GLASS_FISH_HOME 是 GlassFish 的安裝目錄 命令執行完畢後可以看到成功部署信息
第步: 打開浏覽器 輸入http://localhost:/Sample/indexjsp 看到頁面內容
第步: 打開浏覽器 輸入 http://localhost:/Sample/servlet/Sample 看到頁面內容
體驗 GlassFish v 的熱部署特性
第步: 修改 indexjsp 文件內容 保存後 刷新浏覽器 你就能馬上看到新的內容
( http://localhost:/Sample/indexjsp)
第步: 修改 SampleServletjava 保存後 等待片刻 Eclipse 已經自動編譯這個類 但 GlassFish v 控制台中沒有任何提示 刷新浏覽器 看不到新的內容
( http://localhost:/Sample/servlet/Sample)
第步: 現在 在 Sample 項目根目錄中創建文件名為reload的文件(內容為空)
第步: 觀察GlassFish v 控制台 可以看到重新加載信息刷新浏覽器
(http://localhost:/Sample/servlet/Sample)
到了新的內容
第步: 再次修改 SampleServletjava 的內容 保存後 遇到和第步同樣的問題
第步: 再次打開 reload 文件 輸入任意內容 然後保存
第步: 再次出現與第步同樣的效果
總結上述操作 GlassFish v 對於非Java類的加載 達到了和Tomcat同樣的效果 但Java類的加載 需要通過 reload 文件的時間戳來控制 這種做法對開發有好處 在調試改錯時 可以修改多個 Java 類文件 然後讓 GlassFish v 一次加載全部修過的類
自動化 reload 文件時間戳刷新
上一節中 手工打開 reload 文件 通過修改其內容刷新其時間戳 這種做法太麻煩
在 unix/linux 平台下 通過命令 touch 刷新 reload 文件的時間戳 在 Window 平台 也有
人實現了 touch 我在 CodeProject 網站找到一個 touchexe: Touch for Windows The Code Project Free Tools很好用 並且可以集成到 Eclipse 的工具條按鈕中來執行 touch 命令(touchexe 已經包括在附件中)
第步: 拷貝下載的 touchexe 到 Sample 項目根目錄
第步: 在 Eclipse 下 選擇 Run > External Tools > Open External Tools Dialog
第步: 選中左側 Program 節點 右擊 選擇New菜單項
第步: 在右側出現的對話框中 填入下面的內容
Name: SampleTouch
Main[頁面]
Localtion: ${workspace_loc:/Sample/touchexe}
Working Directory: ${workspace_loc:/Sample}
Arguments: reload
Common[頁面]
Display in favorites menu: 選中External Tools
保存後 你可以在Eclipse的Run工具條按鈕中看到新創建的項
結語
用 GlassFish v 可以完全替換 Tomcat x 在開發中它保留了 Tomcat 好的特性的同時給我們帶來了強壯的熱部署功能 顯著地提高了開發效率
感謝GlassFish v 感謝為之付出心血的Java社區成員 是他們讓我們感受到了技術進步的喜悅
[] []
From:http://tw.wingwit.com/Article/program/Java/ky/201311/29202.html