Spring层编写
-
配置Spring整合Mybatis,这里我们数据源使用c3p0连接池;
-
编写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>
-
-
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事务支持
暂无。
-