A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 朱婵 中级黑马   /  2014-2-20 14:42  /  1048 人查看  /  0 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

一,从web.xml文件开始,
加载spring的配置文件
<!-- 加载配置文件 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:/spring/applicationContext.xml</param-value>
  </context-param>
  
  <servlet>
     <servlet-name>spring</servlet-name>
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     <init-param>
                        <param-name>contextConfigLocation</param-name>
                        <param-value>classpath:/spring/applicationContext.xml</param-value>
         </init-param>
         <load-on-startup>1</load-on-startup>
  </servlet>

配置监听器
<!-- 配置监听器 -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  
  <servlet-mapping>
                <servlet-name>spring</servlet-name>
                <url-pattern>/method/*</url-pattern>
  </servlet-mapping>
配置拦截器

<!-- 配置拦截器 -->
  <filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
                        <param-name>forceEncoding</param-name>
                        <param-value>true</param-value>
        </init-param>
  </filter>
  
  <filter-mapping>
     <filter-name>characterEncodingFilter</filter-name>
     <url-pattern>/*</url-pattern>
  </filter-mapping>
  
  <filter>
     <filter-name>HiddenHttpMethodFilter</filter-name>
     <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
  </filter>
  
  <filter-mapping>
      <filter-name>HiddenHttpMethodFilter</filter-name>
      <servlet-name>spring</servlet-name>
  </filter-mapping>

写配置文件时,加载对应的jar包。
第二步,开始着手写spring的配置文件
自动扫描以及注解配置
  <!-- 自动扫描 -->
        <context:component-scan base-package="com.zc" />
        <context:annotation-config />
<!-- 引入jdbc配置文件 -->  
    <context:property-placeholder location="classpath:jdbc.properties" ignore-unresolvable="true"/>  
    <!--创建jdbc数据源 -->  
   
    <bean id="parentDataSource" class="org.apache.commons.dbcp.BasicDataSource" abstract="true"  destroy-method="close">  
                <property name="driverClassName" value="${jdbc.driverClassName}"/>
                <property name="maxActive" value="1000" />
        <property name="maxWait" value="1000" />
        <property name="poolPreparedStatements" value="true" />
        <property name="defaultAutoCommit" value="true" />
        </bean>
         <!-- 数据库 -->
    <bean id="dataSource" parent="parentDataSource">
        <property name="url" value="${jdbc.url}" />
        <property name="username" value="${jdbc.username}" />
        <property name="password" value="${jdbc.password}" />
    </bean>
配置事物
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  
        <property name="dataSource" ref="dataSource" />  
    </bean>  
    事物拦截方法
     <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
           <tx:method name="find*" propagation="SUPPORTS" read-only="true"/>
           <tx:method name="get*" propagation="SUPPORTS" read-only="true"/>
           <tx:method name="add*" propagation="REQUIRED"/>
           <tx:method name="save*" propagation="REQUIRED"/>
           <tx:method name="del*" propagation="REQUIRED"/>
           <tx:method name="update*" propagation="REQUIRED"/>
           <tx:method name="*" propagation="SUPPORTS" read-only="true"/>
       </tx:attributes>
     </tx:advice>

    <!-- 配置哪些类的方法需要进行事务管理 -->
    <aop:config>
       <aop:pointcut id="allManagerMethod" expression="execution(* com.zc.servive.*.*(..))"/>
       <aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod"/>
    </aop:config>
   
   
    <!-- 创建SqlSessionFactory,同时指定数据源 -->  
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
          <property name="configLocation" value="classpath:/mybatis/sqlmap-config.xml" />
       <!-- <property name="mapperLocations" value="classpath:/mybatis/mapper/*.xml" />-->
    </bean>
                    
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.zc.dao" />
    </bean>

到此差不多了,框架基本没问题了,注意是jar一定要完全,要兼容

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马