Spring整合MyBatis整合

Posted 林然

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring整合MyBatis整合相关的知识,希望对你有一定的参考价值。

1.导入所需要的jar依赖

!--MyBatis和Spring的整合包 由MyBatis提供-->
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis-spring</artifactId>
  <version>1.3.0</version>
</dependency>
<!--MyBatis的核心jar文件-->
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>3.4.1</version>
</dependency>
View Code

2.MyBatis和Spring整合(XML版)

1.dao接口

 

 2.entity实体类

 

 3.service层接口

 

 4.serviceimpl实现类

 

 5.PersonDao.xml配置

 

 6.jdbc.properties配置

 

 7.大配置文件

<?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/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
   <!--<context:component-scan base-package="com.spring"/>-->
    <!-- 配置数据源  spring内置的数据源-->
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${jdbc.driver}"></property>
        <property name="url" value="${jdbc.url}"></property>
        <property name="username" value="${jdbc.username}"></property>
        <property name="password" value="${jdbc.password}"></property>
    </bean>
    <!-- 引入属性文件 -->
    <context:property-placeholder location="jdbc.properties.properties"/>
    <!--注册DAO层:mapper的代理对象-->
    <bean id="personDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
        <property name="mapperInterface" value="com.spring.dao.PersonDao"></property>
        <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
    </bean>
    <!--配置service层对象-->
    <bean id="personService" class="com.spring.service.PersonServiceImpl">
        <property name="dao" ref="personDao"></property>
    </bean>
    <!-- sqlSessionFactory 创建SqlSession对象的工厂 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <!-- Mybatis的大配置文件 -->
        <property name="typeAliasesPackage" value="com.spring.entity"></property>
        <!-- 扫描sql配置文件:mapper需要的xml文件 -->
        <property name="mapperLocations" value="classpath*:mapper/*.xml"/>
    </bean>
    <!-- MapperScannerConfigurer 扫描mapper文件扫描器 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.spring.dao"></property>
    </bean>

    <!-- transactionManager 事务管理器-->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource"></property>
    </bean>
    <!-- 事务通知-->
    <tx:advice transaction-manager="transactionManager" id="txAdvice">
        <tx:attributes>
            <!--get系列方法设置事务的隔离级别和传播行为-->
            <tx:method name="get*" isolation="READ_COMMITTED" propagation="REQUIRED"/>
        </tx:attributes>
    </tx:advice>
</beans>
View Code

8.测试类

 

 结果:

 

 

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

Mybatis学习--spring和Mybatis整合

7.Spring:整合Mybatis

spring和mybatis的整合(包含原始dao的整合方式和mapper代理整合方式)

基于Spring+SpringMVC+MyBatis开发书评网Spring和MyBatis的整合

Spring-整合Mybatis

mybaits和spring整合后pojo扫描怎么配置