spring整合mybatis

主要就是一个配置问题,以前单独学mybatis和spring的时候,都需要在各自的xml里配置,利用spring整合mybatis就不需要在mybatis的xml文件里去配置,只需要建出一个mybatis的xml文件,导入mybatis的dtd即可,相应的配置会放在spring-mybatis(可自定义命名)的xml文件里,然后在spring的beans.xml里引入spring-mybatis文件即可。相应的配置步骤如下:

1.首先创建一个mybatis.xml文件(如果没需要也不需要建),导入需要的dtd(约束文件)。里面什么也不需要配置。

<?xml version="1.0" encoding="UTF-8"?>                                     
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"        
"http://mybatis.org/dtd/mybatis-3-config.dtd">                             
<configuration>                                                            
                                                                           
</configuration>                                                           

2.创建一个spring的beans(可自定义名)文件,因为为用的STS,而不是eclipse,所以当创建这个beans的时候,勾选了相应的选项就会自动补充xmlns头文件,而eclipse没有这个功能。

<?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-4.3.xsd                          
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd              
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">                           
    <!--  扫描包下面的所有组件-->                                                                                                                 
    <context:component-scan base-package="com.hx.spring_mybatis"/>                                                                      
    <!-- 开启spring对注解的支持 -->                                                                                                             
    <context:annotation-config/>                                                                                                        
    <!-- 引入整合文件 -->                                                                                                                     
    <import resource="spring-mybatis.xml"/>                                                                                             
</beans>    

3.创建并配置spring-mybatis文件,相当于以前配置在mybatis的配置现在用bean来管理。配置也无非那么几个步骤:

①.引入连接数据库的文件

②创建数据源,也就是创建一个bean

③将数据源映射到sqlSession中,配置自动扫描mapper文件。也就是创建一个bean

④再建一个bean来管理dao层,将这个bean来和上面一个bean中的mapper文件来相映射,sprin会自动去扫描dao层中的类和mapper文件映射。

 

<?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-4.3.xsd                        
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd            
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">                         
                                                                                                                                      
    <context:component-scan base-package="com.hx.spring_mybatis"/>                                                                    
    <!-- 引入连接数据库的配置文件 -->                                                                                                             
    <context:property-placeholder location="classpath:jdbc.properties"/>                                                              
    <!-- 创建数据源 -->                                                                                                                    
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">                                        
        <property name="driverClassName" value="${jdbc.driver}"/>                                                                     
        <property name="url" value="${jdbc.url}"/>                                                                                    
        <property name="username" value="${jdbc.username}"/>                                                                          
        <property name="password" value="${jdbc.password}"/>                                                                          
    </bean>                                                                                                                           
    <!--将数据源映射到sqlSessionFactory中  -->                                                                                                
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">                                                    
        <property name="configLocation" value="classpath:mybatis-config.xml"/>                                                        
        <property name="typeAliasesPackage" value="com.hx.spring_mybatis.entity"/>                                                    
        <property name="dataSource" ref="dataSource"/>                                                                                
        <!-- 自动扫描mapper文件 -->                                                                                                         
        <property name="mapperLocations" value="classpath:mappers/*.xml"/>                                                            
    </bean>                                                                                                                           
    <!-- Dao接口所在的包名,Spring会自动查找其下的类 -->                                                                                               
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">                                                                  
        <property name="basePackage" value="com.hx.spring_mybatis.dao"/>                                                              
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>                                              
    </bean>                                                                                                                           
   <!-- 事务管理器(由Spring管理MyBatis的事务) -->                                                                                                
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">                           
        <!-- 关联数据源 -->                                                                                                                
        <property name="dataSource" ref="dataSource"></property>                                                                      
    </bean>                                                                                                                           
       <!--======= 事务配置 End =================== -->                                                                                      
</beans>    

4.建dao层,实体来测试                                                                                                                         
                                                                                                                                                                                                                                                                 
                                                                                                                                        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值