安裝Struts 2 (4)

2.1  搭建Struts開發環境

  

    爲了給讀者展示一個HelloWorld示例,引導讀者在自己的計算機中搭建一個Struts 2開發環境。

針對讀者羣的不同,搭建環境也進行了分類:Java初學者可以使用最基本的開發環境,使用JDK和文本編輯器來學習Struts 2,這樣可以使初學者能夠更加深刻理解技術方面的細節所在,加深對Struts 2框架體系的認識,真正學會技術的精髓。

而對於有過Struts 1或者WebWork開發經驗的讀者,完全可以使用流行的IDE環境來學習開發,這樣會大大提高代碼編寫的效率,節省學習時間。另外,熟練的IDE使用能力也會讓讀者在實際開發工作中更好地融入開發團隊。

提示

筆者在這裏建議使用最基本的開發環境,這樣可以避免出現頻繁更換IDE集成開發工具帶來的困擾。

.......這裏有安裝jdk,tomcat等部分,此次省略........直接從安裝struts 2開始

2.1.4  安裝Struts 2

進入Struts 2的官方網站下載地址:http://struts.apache.org/download.cgi,界面如圖2.7所示。下載界面中有如面選擇:

Full Distribution:下載Struts 2的完整版。通常建議下載該選項。

Example Applications:下載Struts 2的示例應用,這些示例應用對於學習Struts 2有很大的幫助。

Blank Application only:僅下載Struts 2的空示例應用。

Essential Dependencies only:僅下載Struts 2的核心庫。

Documentation:僅下載Struts 2的相關文檔,包含Struts 2的使用文檔、參考手冊和API文檔等。

Source:下載Struts 2的全部源代碼。

Alternative Java 4 JARs:下載可選的JDK 1.4的支持JAR文件。

通常筆者建議下載Full Distribution版本,該版本已經包含了其他幾種安裝包,Struts 2安裝包只是一個簡單的壓縮文件,解壓即可。使用解壓軟件解壓後,目錄結構如圖2.8所示。

           

2.7  Struts 2下載界面                            

2.8  Struts 2目錄結構

該目錄結構內容如下:

apps:該文件夾下包含了基於Struts 2的示例應用,這些示例應用對於學習者是非常有用的資料。

docs:該文件夾下包含了Struts 2的相關文檔,包括Struts 2的快速入門、Struts 2的文檔,以及API文檔等內容。

j4:該文件夾下包含了讓Struts 2支持JDK 1.4JAR文件。

lib:該文件夾下包含了Struts 2框架的核心類庫,以及Struts 2的第三方插件類庫。

src:該文件夾下包含了Struts 2框架的全部源代碼。

前面在描述Struts 2優點的時候已經說明,Struts 2的安裝是非常簡單的,只是將JAR文件複製到相應目錄即可。在讀者正確安裝好JDKTomcat後,可以通過簡單方式測試Struts 2是否可以正常運行。

如圖2.8所示的目錄結構是一個標準的Web應用結構,其中apps中包含了4個示例程序,分別是:struts2-blank-2.0.11.warstruts2-mailreader-2.0.11.warstruts2-portlet-2.0.11.warstruts2-showcase-2.0.11.war

 struts2-blank-2.0.11.war文件拷貝到Tomcat相關目錄下。例如,筆者的Tomcat安裝目錄是:C:/Program Files/Apache Software Foundation/Tomcat 6.0,把示例應用壓縮包拷貝到C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps目錄下,啓動Tomcat,會自動將struts2-blank-2.0.11.war文件解壓發佈。可以在Tomcat控制檯看到如下信息:

Feb 25, 2007 11:42:23 PM org.apache.coyote.http11.Http11BaseProtocol start

INFO: Starting Coyote HTTP/1.1 on http-8080

Feb 25, 2007 11:42:24 PM org.apache.jk.common.ChannelSocket init

INFO: JK: ajp13 listening on /0.0.0.0:8009

Feb 25, 2007 11:42:24 PM org.apache.jk.server.JkMain start

INFO: Jk running ID=0 time=0/141 config=null

Feb 25, 2007 11:42:24 PM org.apache.catalina.storeconfig.StoreLoader load

INFO: Find registry server-registry.xml at classpath resource

Feb 25, 2007 11:42:24 PM org.apache.catalina.startup.Catalina start

INFO: Server startup in 6672 ms

Feb 25, 2007 11:52:55 PM org.apache.catalina.startup.HostConfig deployWAR

INFO: Deploying web application archive struts2-blank-2.0.11.war

 由此說明struts2-blank-2.0.11.war應用壓縮包被成功發佈。在瀏覽器中輸入:http://localhost:8080/struts2-blank-2.0.11/example/HelloWorld.action,會返回Struts的應用示例界面,如圖2.9所示,說明Struts 2環境搭建成功。

2.9  Struts 2示例界面

 Struts 2的一般步驟是把lib目錄下的相關JAR文件拷貝到Weblib目錄中,同時修改Web應用的web.xml文件,添加Struts 2的配置。一般普通的Web應用目錄結構如下:

Web應用名稱(如Bank):

|-------WEBINF

       |classes

       |lib

       |web.xml

|index.jsp

 commons-logging-1.0.4.jarfreemarker-2.3.8.jarognl-2.6.11.jarstruts2-core-2.0.11.jarxwork-2.0.4.jar文件拷貝到Web應用的lib目錄下。

說明

Struts 2lib目錄中包含有幾個插件JAR文件,在沒有配置插件之前,不要拷貝到Web應用的lib目錄下,否則會出現錯誤。

 

  web.xml文件中加入如代碼2.1所示的內容。

代碼2.1  Struts 2示例的web.xml配置文件

<!—配置Struts 2 -->

<filter>

       
<!-- 配置核心過濾器  -->

        
<filter-name>struts2</filter-name>

        
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

    
</filter>

    
<filter-mapping>

        
<!-- 攔截所有URL用戶請求 -->

        
<filter-name>struts2</filter-name>

        
<url-pattern>/*</url-pattern>

    
</filter-mapping>

 

 另外,需要在classes目錄下建立一個struts.xml配置文件,示例中該文件內容如代碼2.2所示。

代碼2.2  Struts 2示例的struts.xml配置文件

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC

    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

    "http://struts.apache.org/dtds/struts-2.0.dtd"
>

<struts>

    
<!-- 配置常量  -->

    
<constant name="struts.enable.DynamicMethodInvocation" value="false" />

    
<!-- 配置開發模式爲false -->

    
<constant name="struts.devMode" value="false" />

    
<include file="example.xml"/>

    
<!-- 增加包配置 -->

</struts>

 

 到這裏,一個基本的Struts 2框架的Web應用已經完成,目錄基本結構如下:

|-------WEBINF

       |classes

            |struts.xml

       |lib

            |commons-logging-1.0.4.jar

            |freemarker-2.3.8.jar

            |ognl-2.6.11.jar

            |struts2-core-2.0.11.jar

            |xwork-2.0.4.jar

       |web.xml

|index.jsp

讀者只要建立了類似於該目錄結構的Web項目,就可以發佈到Web應用服務器,如TomcatJBossWebLogic等,並不需要特別的設置,只要拷貝到相應發佈目錄即可。

2.1.5  Eclipse安裝Struts 2

Eclipse是流行的開發工具,具有靈活的插件安裝功能,不過到目前爲止,筆者還沒有找到關於Struts 2的相應插件,相信不久就會出現。不使用插件,在Eclipse中也可以非常方便地配置Struts 2開發環境。接下來的步驟就是在Eclipse中安裝Struts 2

 啓動Eclipse,新建一個Web項目Struts_HelloWorld,如圖2.10所示。

2.10  建立一個Web項目

 建好Struts2_HelloWorld項目後,單擊“新建”菜單,建立一個Server,如圖2.11所示。在建立Server過程中,Eclipse會提示輸入Tomcat 6的安裝主目錄,筆者設置爲:C:/Program Files/Apache Software Foundation/Tomcat 6.0

 成功建立Server後,需要將Struts 2的相關JAR粘貼到Web項目的lib目錄中,進入Struts 2lib目錄,選擇將要粘貼的JAR文件後選擇“複製”命令,如圖2.12所示。

    

2.11  建立一個Server                    

     2.12  選擇JAR文件

 轉到Eclipse窗口,在“Project Explorer”子窗口中選中Struts2_HelloWorld/ WebContent/WEB-INF/lib,然後在右鍵菜單中選擇“粘貼”命令。經過Eclipse自動刷新“Project Explorer”子窗口,剛纔所粘貼的JAR文件應該會出現在Struts2_HelloWorld/Java Resourcessrc/Libraries/Web App Libraries下,如圖2.13所示。

 Java Resourcessrc目錄下建立一個struts.xml配置文件,可以選擇“新建|other| General|文件”,輸入struts.xml作爲文件名。可以輸入Struts 2詳細配置數據,讀者會在後面內容中掌握。

2.13  Eclipse配置Struts 2

 需要對項目中默認的web.xml文件進行修改,修改後的內容如代碼2.3所示。

代碼2.3  修改web.xml配置文件

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

    
<display-name>Struts 2.0 Hello World</display-name>

    
<!— 配置filter-- >

    
<filter>

    
<!-- 配置核心過濾器  -->

     
<filter-name>struts2</filter-name>        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

    
</filter>

    
<filter-mapping>

    
<!-- 攔截所有URL用戶請求 -->

        
<filter-name>struts2</filter-name>

        
<url-pattern>/*</url-pattern>

    
</filter-mapping>

    
<!—配置歡迎界面文件-- >

    
<welcome-file-list>

        
<welcome-file>index.html</welcome-file>

    
</welcome-file-list>

</web-app>

 

  Web應用的部署。右鍵單擊“Struts_HelloWorld|Export|WAR file”。單擊“Export|WAR file”菜單,出現如圖2.14所示的對話框,選擇“Web|WAR file”。

 單擊“Next”按鈕,出現如圖2.15所示的對話框,輸入WAR文件的路徑(如%tomcat%/webapps/Struts2_HelloWorld.war),單擊“Finish”按鈕應用發佈完成。

到此爲止,Eclipse環境下的Struts 2框架安裝就完成了。由於沒有Struts 2相關插件,一些配置代碼還不會自動生成,不過Struts 2配置起來很簡單,並沒有給開發者帶來很大的麻煩。

後面的開發示例,一般是在JDK環境下完成的,不過讀者也可以使用Eclipse來進行編譯和部署,並不用進行特別的改動。

2.14  選擇發佈類型

說明

如果使用Eclipse作爲開發工具,需要安裝MyEclipse或者Lombo插件來支持Web開發。筆者使用MyEclipse作爲開發工具,讀者可以下載安裝MyEclipse,建議下載完整版的MyEclipse,安裝方法與Eclipse一致。

 

2.15  選擇發佈位置

發佈了47 篇原創文章 · 獲贊 4 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章