zoukankan      html  css  js  c++  java
  • Spring和Struts2整合

    目的:spring容器管理Action类,代替Servlet

    步骤:主要在配置文件

    Struts2:

    添加支持spring的jar包,

    配置<action class="Action类在容器中的id"


    Action类: 
    定义需要容器注入的属性,也就是定义service,service层也要添加调用DAO的属性。并生成get和set方法。

    Action:

    service:

    DAO:

    //模拟数据库连接
    private String conn;

    spring:

    1.web.xml配置文件:

    alt+/ C 选择ContextLoadListener创建配置
    配置文件的位置和名称
    classpath:spring文件名.xml
    加载容器的监听器

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:app.xml</param-value>
        
      </context-param>
      <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>
      <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
      </filter>
      
      <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
    

      

    2.添加Action类的bean:
    注入Action类的属性
    scope=“prototype” 多例模式

    <!-- DAO -->
    <bean id="testDAO" class="com.hanqi.test.TestDAO">
    	<property name="conn" value="Oracle"></property>
    </bean>
    
    <!-- service -->
    <bean id="testService" class="com.hanqi.test.TestService">
    	<property name="testDAO" ref="testDAO"></property>
    </bean>
    
    <!-- Action -->
    <!-- scope="prototype"多利模式,Action类的实例不能是单利的 -->
    <bean id="testID" class="com.hanqi.test.TestAction" scope="prototype">
    	<property name="testService" ref="testService"></property>
    </bean>
    

      

  • 相关阅读:
    Codeforces Round #614 (Div. 2) D. Aroma's Search
    Codeforces Round #614 (Div. 2) C. NEKO's Maze Game
    Kruskal最小生成树及应用
    Codeforces Round #608 (Div. 2) E. Common Number
    Codeforces Round #607 (Div. 2) D Beingawesomeism
    codeforce Hello 2020 A~E
    Codeforces Round #609 (Div. 2)
    Codeforces Round #607 (Div. 2) C. Cut and Paste
    Codeforces Round #605 (Div. 3) F. Two Bracket Sequences 三维dp
    2019-2020Nowcoder Girl初赛题解
  • 原文地址:https://www.cnblogs.com/liuyanzeng/p/6192603.html
Copyright © 2011-2022 走看看