SpringMVC-08-整合SSM之Spring層編寫
阿新 • • 發佈:2020-09-10
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事務支援
暫無。
-