zoukankan      html  css  js  c++  java
  • SpringMVC-08-整合SSM之Spring层编写

    Spring层编写

    1. 配置Spring整合Mybatis,这里我们数据源使用c3p0连接池;

    2. 编写Spring整合Mybatis的相关配置文件:spring-dao.xml

      • 关联数据库配置文件

        <!--1. 关联数据库配置文件-->
        <context:property-placeholder location="classpath:database.properties"/>
        
      • 连接池

        <!--2. 连接池
            dbcp:半自动化操作 不能自动连接
            c3p0:自动化操作,自动化的加载配置文件,并且可以自动设置到对象中
            driud:
            hikari:
        -->
        <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name="driverClass" value="${jdbc.driver}"/>
            <property name="jdbcUrl" value="${jdbc.url}" />
            <property name="user" value="${jdbc.username}"/>
            <property name="password" value="${jdbc.password}"/>
        
            <!--c3p0连接池的私有属性-->
            <property name="maxPoolSize" value="30"/>
            <property name="minPoolSize" value="10"/>
            <!--关闭连接后不自动提交-->
            <property name="autoCommitOnClose" value="false"/>
            <!--获取连接超时时间-->
            <property name="checkoutTimeout" value="10000"/>
            <!--当获取连接失败后重试次数-->
            <property name="acquireRetryAttempts" value="2"/>
        </bean>
        
      • sqlSessionFactory

        <!--3. sqlSessionFactory-->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource"/>
            <!--绑定mybatis配置文件-->
            <property name="configLocation" value="classpath:mybatis-config.xml"/>
        </bean>
        
      • 配置dao接口扫描包【新知识】

        <!--4.配置dao接口扫描包,动态的实现了dao接口注入到spring容器中-->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <!--注入sqlSessionFactory-->
            <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
            <!--扫描的dao包-->
            <property name="basePackage" value="com.kuang.dao"/>
        </bean>
        
    3. Spring整合service层

      • 扫描service下的包

        <!--1. 扫描service下的包-->
        <context:component-scan base-package="com.kuang.service"/>
        
      • 所有业务类注入spring

        <bean id="BookServiceImpl" class="com.kuang.service.BookServiceImpl">
            <property name="bookMapper" ref="bookMapper"/>
        </bean>
        
      • 声明式事务配置

        <!--3. 声明式事务配置-->
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
            <!--注入数据源-->
            <property name="dataSource" ref="dataSource"/>
        </bean>
        
      • aop事务支持

        暂无。

  • 相关阅读:
    Android 中的 Service 全面总结
    数据库事务
    ADB server didn't ACK
    Eclipse中10个最有用的快捷键组合
    IoC框架
    Wifi相关的操作
    Hibernate generator小结
    不朽的青春
    JSCPC 2020 摸鱼记
    CCPC 2020 秦皇岛站 H题
  • 原文地址:https://www.cnblogs.com/CodeHuba/p/13648840.html
Copyright © 2011-2022 走看看