<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-199  評論-203  文章-11  trackbacks-0

    apache終于發布了struts2的正式版:struts2.0.6GA,所以我也該從webwork遷移至struts2。struts2基本上就是webwork的翻版,所以遷移過程倒是很簡單,只需要修改下配置文件和一些包名就可以了。如果在Eclipse、Netbeans這些集成開發工具的幫助下,記不清包名也很容易找到想要的類的。

    在Eclipse下建立一個Dynamic Web Application。

    從struts2.0.6的lib目錄中復制下面的庫文件到WEB-INF/lib目錄下:
    commons-logging-1.1.jar
    freemarker-2.3.8.jar
    ognl-2.6.9.jar
    struts-api-2.0.6.jar
    struts-core-2.0.6.jar
    struts-spring-plugin-2.0.6.jar
    xwork-2.0.0.jar

    從spring中lib目錄中復制下面的庫文件到WEB-INF/lib目錄下:
    spring.jar

    修改web.xml,增加一個struts的分派器filter,映射所有的url-pattern,再增加一個spring的ContextLoaderListener監聽器。修改后的內容如下:
    xml 代碼
    <?xml version="1.0" encoding="UTF-8"?>  
    <web-app id="WebApp_ID" version="2.4"  
      xmlns="http://java.sun.com/xml/ns/j2ee"  
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  
      <display-name>struts2tutorial</display-name>  
       
      <filter>  
      <filter-name>struts2</filter-name>  
      <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>  
      </filter>  
       
      <filter-mapping>  
      <filter-name>struts2</filter-name>  
      <url-pattern>*.action</url-pattern>  
      </filter-mapping>  
       
      <welcome-file-list>  
      <welcome-file>index.jsp</welcome-file>  
      </welcome-file-list>  
       
      <listener>  
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  
      </listener>  
       
    </web-app>  

     

     

    寫一個簡單的Action,HelloWorld:
    java 代碼
    package tutorial;  
    import com.opensymphony.xwork2.ActionSupport;  
    public class HelloWorld extends ActionSupport {  
      
      public static final String MESSAGE = "Struts is up and running ...";  
      
      public String execute() throws Exception {  
      setMessage(MESSAGE);  
      return SUCCESS;  
      }  
      
      private String message;  
      
      public void setMessage(String message){  
      this.message = message;  
      }  
      
      public String getMessage() {  
      return message;  
      }  
    }  

     

     

    在源文件路徑下(項目的src目錄)增加struts.xml配置action。這個文件是集成spring的關鍵所在,這里面描述有如何將spring2集成到struts2的相關信息:
    xml 代碼
    <!DOCTYPE struts PUBLIC  
      "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
      "http://struts.apache.org/dtds/struts-2.0.dtd">  
    <struts>
      <!-- 下面這句表明對象是由spring負責產生的.加上這句后,struts會產生讓spring負責
      產生bean,如果spring不能產生bean,則由struts自己產生.也可以在struts.properties
      文件內定義這個屬性.-->
      <constant name="objectFactory" value="spring"></constant>  
      <package name="struts2tutoial" extends="struts-default" namespace="/">  
      <!-- 注意,現在action的class屬性不再是類的名字了,而是在spring中的bean的id
      詳細信息請看下面的spring的bean配置文件applicationContext.xml -->
      <action name="HelloWorld" class="helloWorld">  
      <result>/helloWorld.jsp</result>  
      </action>  
      <!-- Add your actions here -->  
      </package>  
    </struts>  

     

    在WEB-INF/目錄下增加spring的bean配置文件applicationContext.xml:
    xml 代碼
    <?xml version="1.0" encoding="UTF-8"?>  
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">  
    <beans>  
      
      <bean id="helloWorld" class="tutorial.HelloWorld"></bean>  
      
    </beans>  

     

    配置很簡單,只有一個bean。

    最后,在WebContent目錄下增加helloWorld.jsp:
    xml 代碼
    <%@ taglib prefix="s" uri="/struts-tags" %>  
      
    <html>  
      <head>  
      <title>Hello World!</title>  
      </head>  
      <body>  
      <h2><s:property value="message" /></h2>  
      </body>  
    </html>  

    posted on 2009-05-27 17:32 Werther 閱讀(296) 評論(0)  編輯  收藏 所屬分類: 10.Java
    主站蜘蛛池模板: 男男gay做爽爽免费视频| 亚洲一本一道一区二区三区| 国产精品成人亚洲| 免费高清小黄站在线观看| 91丁香亚洲综合社区| 成年人免费视频观看| 亚洲一本到无码av中文字幕 | 午夜免费啪视频在线观看 | 久久国产免费福利永久| 亚洲高清无在码在线电影不卡| 精品熟女少妇av免费久久| 亚洲日韩在线视频| 成人毛片免费观看| 黄色毛片免费在线观看| 亚洲精品无码久久毛片| 中文字幕乱理片免费完整的| 亚洲国产女人aaa毛片在线 | 国产成人无码精品久久久久免费| 国产亚洲精品成人a v小说| 中文字幕无线码中文字幕免费| 亚洲成色WWW久久网站| 99在线观看视频免费| 亚洲香蕉久久一区二区 | 免费看大美女大黄大色| 免费在线观看一区| 久久精品国产亚洲AV网站| 免费成人福利视频| 美女被免费网站视频在线| 亚洲一区二区三区影院| 91精品导航在线网址免费| 亚洲人成无码网站在线观看| 精品亚洲一区二区三区在线观看 | 亚洲好看的理论片电影| 成人免费毛片内射美女-百度| 色天使亚洲综合一区二区| 亚洲色精品88色婷婷七月丁香| 99国产精品永久免费视频| 免费激情网站国产高清第一页| 亚洲精品乱码久久久久久中文字幕| 午夜免费1000部| 有码人妻在线免费看片|