spring整合mybatis

spring-mybatis整合:
1,mybatis原先有config.xml配置文件,核心是是通过SqlSessionFactory来操作数据库
2,所以Spring整合MyBatis 其实就是 将MyBatis的SqlSessionFactory 交给Spring
3,config.xml配置文件中配置的是数据库信息,sqlsessionFactory信息,将这些信息搬入spring配置文件中(spring-dao.xml)
4,以上信息配好还不够,sqlsessionFactory中还需要配置信息去操作数据库,与dao层联系
<!--告诉spring扫描映射文件 -->
        <property name="mapperLocations" value="classpath:com/briup/dao/*.xml"></property>

 

spring-dao.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop.xsd">
    <!-- 读取properties文件 -->
    <context:property-placeholder location="classpath:db.properties" />
    <!--配置数据源 -->
    <bean id="dataSource"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName">
            <value>${jdbc.driverClassName}</value>
        </property>
        <property name="url">
            <value>${jdbc.url}</value>
        </property>
        <property name="username">
            <value>${jdbc.username}</value>
        </property>
        <property name="password">
            <value>${jdbc.password}</value>
        </property>
    </bean>

    <!-- 配置sqlsessionFactory -->
    <!-- 查看源码便可知注入的property的名字 -->
    <!-- 可以读取mybatis-config.xml文件,也可以不读取,信息全都在配置在spring中 -->
    <!-- <property name="configLocation" value="classpath:mybatis-config.xml" 
        /> -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="typeAliasesPackage" value="com.briup.bean"></property>
        <property name="configurationProperties">
            <props>
                <prop key="cacheEnabled">true</prop>
                <prop key="lazyLoadingEnabled">false</prop>
            </props>
        </property>
        <!--告诉spring扫描映射文件 -->
        <property name="mapperLocations" value="classpath:com/briup/dao/*.xml"></property>
        <!--  分页插件-->
        <property name="plugins">
            <array>
                <bean class="com.github.pagehelper.PageInterceptor">
                    <property name="properties">
                        <value>
                            helperDialect=oracle
                        </value>
                    </property>
                
                </bean>
            </array>
        </property>
        
        
    </bean>

    <!-- 扫描mapper接口所在的包名,当有多个包的时候,用半角逗号分隔即可,也可以使用*通配符 注意:这里不注入sqlSessionFactory也是可以的 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.briup.dao"></property>
    </bean>

</beans>

 

posted @ 2019-09-11 17:09  千里之外kb  阅读(212)  评论(0编辑  收藏  举报