1. 程式人生 > 其它 >spring與mybatis整合

spring與mybatis整合

<context:component-scan base-package="com.itheima"/>

<!--
    2. spring整合mybatis
-->
<!--
    1. 配置jdbc的環境:
        1.1 配置dataSource(既可以使用spring內建的DataSource,又可以使用第三方的DataSource)
        1.2 配置事務管理者(現在不做),後面學習宣告式事務的時候再講
    2. 將SqlSessionFactoryBean 物件進行IOC配置到spring的核心容器中,並且將dataSource注入進去
    3. 掃描dao包,創建出dao的代理物件,交給spring的核心容器管理
       各種dao代理物件的id,就是介面名首字母改小寫
-->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="username" value="root"></property>
    <property name="password" value="123"></property>
    <property name="url" value="jdbc:mysql:///day20?characterEncoding=utf8"></property>
    <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
</bean>

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource"></property>
    <!--載入mybatis的主配置檔案-->
    <!--<property name="configLocation" value="classpath:SqlMapConfig.xml"></property>-->
    <!--別名配置的包掃描-->
    <property name="typeAliasesPackage" value="com.itheima.pojo"></property>
</bean>

<bean id="scannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="basePackage" value="com.itheima.dao"></property>
</bean>

(spring整合mybatis後(就是把mybatis所需要相關的配置交由spring管理),此時在spring裡配置了sqlSessionFactory且配置了dao的包掃描。spring-mybatis整合包會自動建立sqlSeesion物件,和dao包裡的各代理類。 就是說配置好後,不再需要我們手動建立sqlSession和代理物件了,在Service層直接注入使用,然後調方法即可)