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层直接注入使用,然后调方法即可)

原文地址:https://www.cnblogs.com/mryd/p/15033685.html