<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 閱讀(286) 評論(0)  編輯  收藏 所屬分類: spring

    主站蜘蛛池模板: 手机看黄av免费网址| 在线免费不卡视频| 亚洲伊人久久精品| 国产伦一区二区三区免费| 在线观看片免费人成视频播放| 亚洲视频中文字幕| 国产精品另类激情久久久免费| 日本高清不卡aⅴ免费网站| 亚洲春黄在线观看| 特级淫片国产免费高清视频| 两个人的视频www免费| 亚洲国产美女在线观看 | 最新国产乱人伦偷精品免费网站 | 亚洲视频在线观看免费| 日本免费电影一区| 最近2018中文字幕免费视频| 羞羞视频免费网站含羞草| 亚洲性色成人av天堂| 亚洲精品无码日韩国产不卡?V| 精品久久8x国产免费观看| 国产三级在线免费观看| 亚洲va久久久久| 伊人久久综在合线亚洲2019| 国产一精品一aⅴ一免费| 巨波霸乳在线永久免费视频| 一个人看的www在线免费视频 | 亚洲国产精品无码久久98 | 亚洲国产成人91精品| 国产亚洲午夜高清国产拍精品| 青青草a免费线观a| 日韩免费观看一区| www免费插插视频| 国产亚洲漂亮白嫩美女在线| 亚洲一区二区三区免费视频| 亚洲av一综合av一区| JLZZJLZZ亚洲乱熟无码| 国产性生交xxxxx免费| 国内免费高清在线观看| 亚洲精品国产免费| 午夜视频在线免费观看| 国产精品偷伦视频观看免费 |