spring整合mybatis

Posted wskb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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>

 

以上是关于spring整合mybatis的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis与Spring的整合

SSM整合(springMVC+mybatis)

Spring Boot2 系列教程 | SpringBoot 整合 Mybatis

Spring Boot(19)——使用Mybatis

Spring Boot进阶系列二

SpringBoot--整合Mybatis & 删除无效的文件和文件夹