Ext Struts2.0 Sprng2.0 Ibatis2.3 例子

1.web.xml配置Spring 及 Log4j
  <!-- 配置Spring, 让WEB容器加载 -->
   <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
 
   <listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
   </listener>

<context-param>
       <param-name>contextConfigLocation</param-name>
       <param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param> 

<!-- Struts2的过滤器配置 -->
<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>/*</url-pattern>
    </filter-mapping>
   
    <!-- 配置LOG4J -->
    <context-param>
  <param-name>webAppRootKey</param-name>
  <param-value>YLesi.root</param-value>
</context-param>
   
    <context-param>
    <param-name>log4jConfig</param-name>
    <param-value>/WEB-INF/log4j.properties</param-value>
    </context-param>

2.文件及路径
  /YLesi/Emp/empList.action
  /工程名/Struts2的namespace/action name="empList"

3.json插件返回List
  在Action中:
  List resultList;
  getResultList(),setResultList();
  public String execute(){
setResultList(LIST);
        return SUCCESS;
}
 
注意:<param name="includeProperties">
            resultList.*
       </param>

4.struts2 package action中指定方法
<action name="empList" method="empList" class="EmpAction">


1.Strut2 与 Spring 的整合。
  在Strut2.xml中 加入<constant name="struts.objectFactory" value="spring">
  意思是指定了常量名称和常量值,这里是spring。还要记得要加入struts2-spring-plugin-2.1.6.jar这个包
  由于用了JSON插件还需要这个包jsonplugin-0.34.jar。
 
         <!--
    namespace="/Emp" : 命名空间
    extends="json-default"      : JSON插件
    name="empList"   : ACTION名
    method="empList" : 指定方法
    class="EmpAction" : 与SPRING整合后 需在SPRING中配置
    resultList.* : 注意要带.*否则JSON中不会出现对应字段
-->
    <package name="Emp" namespace="/Emp" extends="json-default">
        <action name="empList" method="empList" class="EmpAction">
            <result name="success" type="json">
            <param name="includeProperties">
            resultList.*
            </param>
            </result>
        </action>
    </package>

2.Spring 与 Ibatis 的整合。
  将SqlMapConfig.xml放在WEB-INF下面。然后在里面应用指定的.xml。例如:<sqlMap resource="com/yl/ibatis/dao/sql/Emp.xml"/>
  重要的是jdbc的配置,现在放在applicationContext.xml,首先定义一个jdbc.properties文件
  jdbc.driver=oracle.jdbc.driver.OracleDriver
  jdbc.url=jdbc:oracle:thin:@10.10.20.110:1521:orcl
  jdbc.username=scott
  jdbc.password=tiger

  applicationContext.xml :
  <!-- 配置自定义的jdbc.properties文件  -->
   <bean id="propertyConfig" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
    <property name="location">
     <value>/WEB-INF/jdbc.properties</value>
    </property>
   </bean>

  <!-- 读取JDBC配置信息 -->
  <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>${jdbc.driver}</value>
</property>
<property name="url">
<value>${jdbc.url}</value>
</property>
<property name="username">
<value>${jdbc.username}</value>
</property>
<property name="password">
<value>${jdbc.password}</value>
</property>
</bean>
 
上面就完成了配置JDBC连接问题。下面就是与Ibatis的SqlMapClientTemplate配置。

<!-- JDBC注入sqlMapconfig.xml -->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<!-- 指定ibatis的配置文件 -->
<property name="configLocation">
     <value>/WEB-INF/SqlMapConfig.xml</value>
    </property>
</bean>

<!-- 向 sqlMapClientTemplate 注入 sqlMapClient -->
<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient">
<ref bean="sqlMapClient"/>
</property>
</bean>

<!-- DAO对象注入sqlMapClientTemplate -->
<bean id="EmpDao" class="com.yl.ibatis.dao.EmpDao">
<property name="sqlMapClientTemplate">
<ref bean="sqlMapClientTemplate"/>
</property>
</bean>

  以上步骤就完成了SqlMapClientTemplate的注入。

你可能感兴趣的:(spring,json,jdbc,ibatis,ext)