springmvc中数据源配置相关

<!--数据源\数据连接\事务相关配置-->
    <!--数据源\数据连接池配置 druid-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driverClassName}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxActive" value="30"/>
        <property name="maxIdle" value="10"/>
        <property name="maxWait" value="1000"/>
        <property name="defaultAutoCommit" value="true"/>
    </bean>

  <!--数据源\数据连接池配置 c3p0-->
     <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
        <property name="driverClass" value="${jdbc.driverClassName}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxPoolSize" value="30"/>
        <property name="maxIdleTime" value="1000"/>
    </bean>

     <!--MyBatis特有配置,MapperScannerConfigurer将Mapper接口生成代理注入到Spring-->
       <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
              <property name="dataSource" ref="dataSource" />
              <property name="configLocation" value="classpath:conf/sqlMapConfig.xml"/>
       </bean>
       <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
              <property name="basePackage" value="com.kuanxue.weixin.DAO"/>
              <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
       </bean>


    <!--bo对象与数据库关系表的注解.LocalSessionFactoryBean是将hbm.xml文件中的对象映射到数据库表-->
      <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="annotatedPackages">
            <list>
                <value>com.lms.quartz.bo</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
                <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
                <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
                <prop key="hibernate.query.substitutions">${hibernate.query.substitutions}</prop>
                <prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}</prop>
                <prop key="hibernate.cache.provider_class">${hibernate.cache.provider_class}</prop>
                <prop key="hibernate.cache.use_second_level_cache">${hibernate.cache.use_second_level_cache}</prop>
            </props>
        </property>
    </bean>

     <!--事务控制-->
     <!--HibernateTemplate与HibernateTransactionManager功能类似,只是HibernateTransactionManager会自动关闭       session,但有可能会出现LazyInitializationException,解决办法是:通过OpenSessionInViewFilter来保证延迟加载不       会出现错误.该事务与DataSourceTransactionManager事务相同功能,不过HibernateTransactionManager能够保证 jdbctemplate所获得con与hibernate获得的con在同一个事务中,DataSourceTransactio管理从datasource数据源获得的连接-->
        <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
              <property name="sessionFactory" ref="sessionFactory"/>
        </bean>
[
<filter>
<filter-name>opensession</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>opensession</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
]


     <!--其它-->
       
  

相关推荐