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

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

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

    WEB2.0開發

    心態決定行為,行為決定習慣,習慣決定命運

    Webwork 和 spring 的整合




    1 適合讀者
    本文針對有一定的web基礎,webwork基礎,對spring有一定的了解。

    http://www.springframework.org/ 站點可以了解更多關于spring的詳細信息. Spring是一個很好的AOP框架,能提供自動的事務管理。

    http://www.opensymphony.com/webwork/ 站點可以了解更多的webwork . Webwork是一個很好的 MVC 框架,以下簡單介紹,webwork 和 spring 的融合,以用戶注冊為例。

    2 整合步驟
    2 .1使用 SpringObjectFactory
    dev.java.net上的 xwork-optional 包括了對 xwork-spring 的支持,可以下載些包。包中只有4個類,可以根據具體情況使用。我在例子中使用了SpringObjectFactory類和SpringObjectFactoryListener 類,并安照webwork的文件在web.xml加入了,以下節點

    <!-- This needs to be after Spring ContextLoaderListener -->

    <listener>

    <listener-class>com.opensymphony.xwork.spring.SpringObjectFactoryListener</listener-class>

    </listener>

    但在實際工作中不能使用,回為在SpringObjectFactoryListener類中寫的,加載些類必須要先加載org.springframework.web.context.ContextLoaderListener類,由于些類在web.xml配置如下,后于listener的執行。

    <servlet>

    <servlet-name>spring</servlet-name>

    <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>

    <load-on-startup>0</load-on-startup>

    </servlet>

    ContextLoaderServlet 的作用是加載 spring配置信息(在int方法中),SpringObjectFactoryListener 的作用是設置 XWork 和 Webwork 的環境,使這能從spring 中加載數據和信息(在contextInitialized(ServletContextEvent event)方法中,當啟動web應用程序是調用).

    要使ContextLoaderServlet比SpringObjectFactoryListener類更早執行,我使用的方法是重載ContextLoaderServlet,在中子類的int方法中設置XWork 和 Webwork 的環境,去掉SpringObjectFactoryListener 監聽器,并整改web.xml中的spring配置,如下:

    <servlet>

    <servlet-name>spring</servlet-name>

    <servlet-class>spring.server.ContextLoaderServletServer</servlet-class>

    <load-on-startup>0</load-on-startup>

    </servlet>

    2 .2 配置webwork
    在webwork.xml中增加如下節點

    <action name="registerSupport-spring" class="registerSupportBean" >

    <result name="success" type="dispatcher">

    <param name="location">/register-result.jsp</param>

    </result>

    <result name="input" type="dispatcher">

    <param name="location">/registerSupport.jsp</param>

    </result>

    <interceptor-ref name="validationWorkflowStack"/>

    </action>

    其中的registerSupportBean在spring中配置

    2 .3 配置spring
    在spring中加入action 配置如下

    <!-- action -->

    <bean name="registerSupportBean" class="spring.action.RegisterActionSupport"

    singleton="false" >

    <property name="userBean">

    <ref bean="userBean"/>

    </property>

    </bean>

    些處的registerSupportBean 即為在webwork中要調用的類名。

    Copyright 2003-2005 www.sohozu.com All Rights Reserved

    posted on 2006-04-05 12:35 ymx 閱讀(259) 評論(0)  編輯  收藏 所屬分類: WebWorkSpring


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲AV无码一区二区大桥未久| 亚洲成av人片天堂网| 国产人成亚洲第一网站在线播放| 日韩免费无码一区二区三区| 久久精品九九亚洲精品天堂| 成全高清在线观看免费| jlzzjlzz亚洲乱熟在线播放| 国产国产人免费人成成免视频| 久久亚洲高清综合| 国产成年无码久久久免费| 国产AV无码专区亚洲AVJULIA| 成人电影在线免费观看| 亚洲av无码成人黄网站在线观看| 无码人妻AV免费一区二区三区| 亚洲AV无码不卡在线播放| 亚洲视频免费观看| 亚洲首页国产精品丝袜| 免费看少妇作爱视频| 日日狠狠久久偷偷色综合免费 | 免费萌白酱国产一区二区三区| 亚洲国产精品成人精品无码区| 暖暖在线视频免费视频| 亚洲成人一级电影| 性一交一乱一视频免费看| 日本一区二区三区免费高清在线| 国产亚洲精品不卡在线| 久久国产精品萌白酱免费| 亚洲中文字幕乱码一区| 亚洲AV成人精品日韩一区18p| a在线免费观看视频| 亚洲国产一区在线观看| 免费大学生国产在线观看p| av午夜福利一片免费看久久| 亚洲网站在线观看| 免费看美女被靠到爽的视频| 精品免费久久久久国产一区| 亚洲小说图片视频| 亚洲电影日韩精品| 四虎在线免费视频| 一级毛片免费播放视频 | 亚洲视频在线观看2018|