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

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

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

    自由飛翔

    我在仰望,java之上

    統計

    留言簿(2)

    我關注的blog

    閱讀排行榜

    評論排行榜

    spring2.0整合struts1(轉載)

    文章來源:http://hi.baidu.com/liuzhe041/blog/item/e12251dcf2ffe053ccbf1ad2.html


    spring 和struts整合 有3種方式,推薦用第三種。
    下面一一介紹,不管使用哪種方式,都需要在web.xml 中配置 spring的 監聽器

    Java代碼 
    1. <context-param>  
    2.         <param-name>contextConfigLocation</param-name>  
    3.         <param-value>/WEB-INF/applicationContext.xml</param-value>  
    4.     </context-param>  
    5.     <listener>  
    6.         <listener-class>  
    7.             org.springframework.web.context.ContextLoaderListener  
    8.         </listener-class>  
    9.     </listener>  

     

     

     

    第一種:使用 Spring 的 ActionSupport 類整合 Struts

     

     a.在struts-config.xml中


    Java代碼 
    1. <action path="/login" name="loginForm" scope="request"  
    2.                         type="com.demo.struts.actions.LoginAction"  
    3.                         input="/login.jsp">  
    4.                         <forward name="success" path="/welcome.jsp" />  
    5.                         <forward name="failure" path="/login.jsp" />  
    6. </action>  
    7.   
    8.    

     

     b.在applicationContext.xml中

     

    Xml代碼 
    1. <bean id="userDAO" class="com.demo.hibernate.dao.UserDAO">  
    2.         <property name="sessionFactory">  
    3.             <ref local="sessionFactory" />  
    4.         </property>  
    5.     </bean>  
    6.   
    7. <bean name="/login" class="com.demo.struts.actions.LoginAction">  
    8.         <property name="userDAO">  
    9.             <ref local="userDAO" />  
    10.         </property>  
    11.     </bean>  
    12.     

     

    c.在action中 使用下面的方式得到bean

     

     

    Java代碼 
    1. UserDAO userDAO=(UserDAO)getWebApplicationContext().getBean("userDAO");  

     

     

    第二種:使用 Spring 的 DelegatingRequestProcessor 覆蓋 Struts 的 RequestProcessor

    a.在struts-config.xml中


    Java代碼 
    1. <action path="/login" name="loginForm" scope="request"  
    2.                                                input="/login.jsp">  
    3.                         <forward name="success" path="/welcome.jsp" />  
    4.                         <forward name="failure" path="/login.jsp" />  
    5. </action>  
    6.   
    7.    
    8. <controller processorClass="org.springframework.web.struts.DelegatingRequestProcessor" />  

     

     

     b.在applicationContext.xml中

     

    Xml代碼 
    1. <bean id="userDAO" class="com.demo.hibernate.dao.UserDAO">  
    2.         <property name="sessionFactory">  
    3.             <ref local="sessionFactory" />  
    4.         </property>  
    5.     </bean>  
    6.   
    7. <bean name="/login" class="com.demo.struts.actions.LoginAction">  
    8.         <property name="userDAO">  
    9.             <ref local="userDAO" />  
    10.         </property>  
    11.     </bean>  

      

    c.在action中 使用下面的注入屬性的方式得到bean ,直接使用 userDAO.xxx 調用userDAO中的方法

     

    Java代碼 
    1. protected UserDAO userDAO;  
    2.   
    3.     Logger log = Logger.getLogger(this.getClass());  
    4.   
    5.     public UserDAO getUserDAO() {  
    6.         return userDAO;  
    7.     }  
    8.   
    9.     public void setUserDAO(UserDAO userDAO) {  
    10.         this.userDAO = userDAO;  
    11.     }  

     

     

    第三種:將 Struts Action 管理委托給 Spring 框架        

    a.在struts-config.xml中

    Java代碼 
    1. <action path="/login" name="loginForm" scope="request"  
    2.                         type="org.springframework.web.struts.DelegatingActionProxy"  
    3.                         input="/login.jsp">  
    4.                         <forward name="success" path="/welcome.jsp" />  
    5.                         <forward name="failure" path="/login.jsp" />  
    6.                 </action>  

     

     

     b.在applicationContext.xml中

     

    Xml代碼 
    1. <bean id="userDAO" class="com.demo.hibernate.dao.UserDAO">  
    2.         <property name="sessionFactory">  
    3.             <ref local="sessionFactory" />  
    4.         </property>  
    5.     </bean>  
    6.   
    7. <bean name="/login" class="com.demo.struts.actions.LoginAction">  
    8.         <property name="userDAO">  
    9.             <ref local="userDAO" />  
    10.         </property>  
    11.     </bean>  

      

    c.在action中 使用下面的注入屬性的方式得到bean ,直接使用 userDAO.xxx 調用userDAO中的方法

     

    Java代碼 
    1. protected UserDAO userDAO;  
    2.   
    3.     Logger log = Logger.getLogger(this.getClass());  
    4.   
    5.     public UserDAO getUserDAO() {  
    6.         return userDAO;  
    7.     }  
    8.   
    9.     public void setUserDAO(UserDAO userDAO) {  
    10.         this.userDAO = userDAO;  
    11.     }  

     



    Gavin

    posted on 2012-03-16 10:14 GavinMiao 閱讀(287) 評論(0)  編輯  收藏 所屬分類: spring

    主站蜘蛛池模板: 亚洲欧洲日产国码久在线观看| 成人免费无码大片A毛片抽搐 | 最新亚洲卡一卡二卡三新区| 99视频有精品视频免费观看| 国产亚洲综合成人91精品| 男人扒开添女人下部免费视频| 国产91久久久久久久免费| 亚洲午夜无码久久| 亚洲av无码成人精品区| 亚洲精品国产高清在线观看| 在线免费观看韩国a视频| 人人狠狠综合久久亚洲| 四虎永久在线精品免费影视 | 亚洲欧美日韩自偷自拍| 精品少妇人妻AV免费久久洗澡| 色偷偷噜噜噜亚洲男人| 亚洲国产精品丝袜在线观看| 亚洲天堂免费在线视频| 日韩亚洲人成在线综合日本 | 久久黄色免费网站| 亚洲综合精品香蕉久久网97| 国产91免费在线观看| 亚洲午夜在线播放| 凹凸精品视频分类国产品免费| 国产精品无码免费专区午夜 | 亚洲婷婷第一狠人综合精品| 在线免费观看一级毛片| 人碰人碰人成人免费视频| 亚洲av无码专区在线播放| 69av免费视频| 黄色a级免费网站| 亚洲第一区香蕉_国产a| 亚洲第一成年免费网站| 一个人看的www视频免费在线观看 一个人看的免费观看日本视频www | 色www永久免费网站| 亚洲精品在线视频观看| 日本免费人成黄页在线观看视频| 一级视频在线免费观看| 精品亚洲成a人片在线观看| 日韩精品无码人妻免费视频| a级毛片免费观看视频|