spring三大核心

spring  三大核心科技———DI(依赖注入)AOP(面向切面编程)DT(声明式事务)spring

 

重点说DT的配置,它的使用大大简化了持久层和业务层的代码编写。sql

 

在applicationContext.xml中分如下步骤:apache

1.读取外部文件编程

<context:property-placeholder location="classpath:dbconfig.properties"/>       //dbconfig.properties是已写好的properies文件,内有jdbc配置属性session

2.配置链接池组件(能够用c3p0,也可使用dbcp)oracle

<!-- a.使用c3p0链接池 -->
  <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
  <property name="driverClass" value="${driverClass}"/>
  <property name="jdbcUrl" value="${jdbcUrl}"/>
  <property name="user" value="${user}"/>
  <property name="password" value="${password}"/>
  <!--配置链接池其余属性,如初始化容量,最长等待时间... -->
  <property name="initialPoolSize" value="${initialPoolSize}"/>
  </bean>

<!-- b.使用Apache Commons Dbcp -->
  <bean id="dataSource2" class="org.apache.commons.dbcp2.BasicDataSource">
  <property name="driverClassName" value="${driverClass}"/>
  <property name="url" value="${jdbcUrl}"/>
  <property name="username" value="${user}"/>
  <property name="password" value="${password}"/>app

  <property name="initialSize" value="${initialSize}"/>
  </bean> url

3.配置SessionFactory(至关于hibernate.cfg.xml) --完成了Hibernate和Spring的整合spa

  //此处以oracle10g为例hibernate

  <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>

  <!-- 配置Hibernate其余属性 -->
    <property name="hibernateProperties">
      <props>
        <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
        <prop key="hibernate.cache.use_second_level_cache">true</prop>
        <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
        <prop key="hibernate.cache.use_query_cache">true</prop>
        <prop key="hibernate.hbm2ddl.auto">update</prop>
        <prop key="hibernate.show_sql">true</prop>
        <prop key="hibernate.format_sql">true</prop>
        <prop key="hibernate.jdbc.batch_size">50</prop>
      </props>
    </property>

  <!-- 配置映射关系 -->
  <property name="packagesToScan" value="com.tz.spring.entity"/>
  </bean>

4.配置事务管理器

  <bean id="tm" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"/>
  </bean>

 

5.固然,要开启声明式事务,也要开启AOP,并配置扫描标注注解的包,依次以下

  <tx:annotation-driven transaction-manager="tm"/>  

  <aop:aspectj-autoproxy/>

  <context:component-scan base-package="com.tz.spring.dao,com.tz.spring.service,com.tz.spring.advice"/>

相关文章
相关标签/搜索