`

mybatis整合spring

阅读更多

Mybatis 整合Spring

根据官方的说法,在ibatis3,也就是Mybatis3问世之前,Spring3的开发工作就已经完成了,所以Spring3中还是没有对Mybatis3的支持。

因此由Mybatis社区自己开发了一个Mybatis-Spring用来满足Mybatis用户整合Spring的需求。

 

通过Mybatis-Spring整合Mybatis跟Spring

MapperFactoryBean

首先,我们需要从Mybatis官网上下载Mybatis-Spring的jar包添加到我们项目的类路径下,当然也需要添加Mybatis的相关jar包和Spring的相关jar包。

我们知道在Mybatis的所有操作都是基于一个SqlSession的,而SqlSession是由SqlSessionFactory来产生的,SqlSessionFactory又是由SqlSessionFactoryBuilder来生成的。

但是Mybatis-Spring是基于SqlSessionFactoryBean的。

在使用Mybatis-Spring的时候,我们也需要SqlSession,而且这个SqlSession是内嵌在程序中的,一般不需要我们直接访问。

SqlSession也是由SqlSessionFactory来产生的,但是Mybatis-Spring给我们封装了一个SqlSessionFactoryBean,在这个bean里面还是通过SqlSessionFactoryBuilder来建立对应的SqlSessionFactory,进而获取到对应的SqlSession。

通过SqlSessionFactoryBean我们可以对其指定一些属性来提供Mybatis的一些配置信息。

所以接下来我们需要在Spring的applicationContext配置文件中定义一个SqlSessionFactoryBean。

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

 <property name="dataSource" ref="dataSource" />

 <property name="mapperLocations"

value="classpath:com/tiantian/ckeditor/mybatis/mappers/*Mapper.xml" />

 <property name="typeAliasesPackage" value="com.tiantian.ckeditor.model" />

</bean>

定义SqlSessionFactoryBean的时候,dataSource属性是必须指定的,它表示用于连接数据库的数据源。

当然,我们也可以指定一些其他的属性,下面简单列举几个:

mapperLocations:它表示我们的Mapper文件存放的位置,当我们的Mapper文件跟对应的Mapper接口处于同一位置的时候可以不用指定该属性的值。

configLocation:用于指定Mybatis的配置文件位置。如果指定了该属性,那么会以该配置文件的内容作为配置信息构建对应的SqlSessionFactoryBuilder,但是后续属性指定的内容会覆盖该配置文件里面指定的对应内容。

typeAliasesPackage:它一般对应我们的实体类所在的包,这个时候会自动取对应包中不包括包名的简单类名作为包括包名的别名。多个package之间可以用逗号或者分号等来进行分隔。

typeAliases:数组类型,用来指定别名的。指定了这个属性后,Mybatis会把这个类型的短名称作为这个类型的别名,前提是该类上没有标注@Alias注解,否则将使用该注解对应的值作为此种类型的别名。

 

接下来就是在Spring的applicationContext文件中定义我们想要的Mapper对象对应的MapperFactoryBean了。

通过MapperFactoryBean可以获取到我们想要的Mapper对象。MapperFactoryBean实现了Spring的FactoryBean接口,所以MapperFactoryBean是通过FactoryBean接口中定义的getObject方法来获取对应的Mapper对象的。在定义一个MapperFactoryBean的时候有两个属性需要我们注入,一个是Mybatis-Spring用来生成实现了SqlSession接口的SqlSessionTemplate对象的sqlSessionFactory;另一个就是我们所要返回的对应的Mapper接口了。

 

http://www.tuicool.com/articles/FVRzI3

分享到:
评论

相关推荐

    mybatis整合spring 实例

    这个实例中的"mybatis整合spring实例(完整版)"文件可能包含了上述所有步骤的源代码,包括Spring的配置文件、MyBatis的配置文件、Mapper接口、XML文件以及相关的Java类。通过仔细阅读和理解这些代码,开发者可以...

    mybatis_spring.zip_mybatis整合spring的包

    将 MyBatis 整合到 Spring 中,可以充分利用 Spring 的管理能力,简化数据库操作,同时保留 MyBatis 的灵活性。 在整合 MyBatis 和 Spring 时,我们需要了解以下几个关键知识点: 1. **MyBatis-Spring 框架**:...

    MyBatis整合Spring中间件jar包 mybatis-spring-1.3.0.jar

    MyBatis-Spring是MyBatis与Spring框架的整合组件,其主要目的是简化在Spring应用中集成MyBatis的过程,使两者能够无缝协作。mybatis-spring-1.3.0.jar是这个中间件的特定版本,包含了实现这种集成所需的所有类和资源...

    mybatis整合spring所有jar包

    将MyBatis与Spring整合可以充分利用两者的优点,实现更高效、灵活的项目开发。 整合MyBatis和Spring的过程主要包括以下几个步骤: 1. **引入依赖**:在`pom.xml`或`build.gradle`文件中,你需要添加MyBatis和...

    官方mybatis整合spring例子

    在"官方mybatis整合spring例子"中,我们将探讨以下几个关键知识点: 1. **集成方式**:MyBatis与Spring的整合主要有两种方式:XML配置和注解配置。XML配置需要在Spring的配置文件中声明SqlSessionFactoryBean,并...

    mybatis-spring 整合jar包

    mybatis-spring 整合jar包,Spring和MyBatis环境整合mybatis-spring-1.1.1

    spring_mybatis 整合jar包

    标题"spring_mybatis 整合jar包"指出我们要关注的是一个包含了整合Spring和MyBatis所需库的压缩文件。这通常包括Spring的核心库、Spring的数据库支持库、MyBatis的主库以及可能的其他依赖,如日志、数据库驱动等。这...

    mybatis与spring整合全部jar包

    这个“mybatis与spring整合全部jar包”包含了这三个框架整合所需的所有依赖库,使得开发者可以快速搭建SSM项目。 首先,让我们深入了解一下这三个组件: 1. **Spring**:Spring 是一个全面的Java企业级应用开发...

    mybatis整合Spring

    MyBatis和Spring的整合是Java开发中常见的一种技术组合,它...以上就是关于"MyBatis整合Spring"的知识点详解,希望对您有所帮助。通过这种整合,开发者能够更好地利用两者的优点,构建出高效、可维护的Java企业级应用。

    mybatis整合spring的所需jar包

    2. **MyBatis-Spring 1.2.3**: 这是 MyBatis 与 Spring 整合的桥梁,它允许你在 Spring 环境中无缝地使用 MyBatis。mybatis-spring.jar 提供了 Spring 的 DataSource、SqlSessionFactoryBean 和 SqlSessionTemplate ...

    Mybatis与Spring整合所需的jar包

    mybatis与spring整合时所依赖的jar包,包括: 1.Mybatis所需的jar包括: ant-1.9.6.jar ant-launcher-1.9.6.jar asm-5.2.jar cglib-3.2.5.jar commons-logging-1.2.jar javassist-3.22.0-CR2.jar log4j-...

    mybatis整合spring时 的核心jar包

    当我们将MyBatis与Spring整合时,可以充分利用两者的优点,实现更高效、灵活的项目架构。下面将详细介绍在整合过程中所需的核心Jar包及其作用。 1. MyBatis核心Jar包: - `mybatis-3.x.x.jar`: MyBatis的主要框架...

    mybatis与spring整合的全部jar包

    SSM(Spring、SpringMVC、MyBatis)框架整合是Java开发中常见的技术栈,主要用于构建企业级的Web应用程序。在这个压缩包中,我们找到了整合MyBatis和Spring所需的全部jar包,这对于初学者或者开发者搭建项目环境非常...

    MyBatis框架的学习(六)——MyBatis整合Spring

    本篇文章将详细讲解如何将MyBatis与Spring进行整合,以便于实现更高效、更灵活的数据库操作和事务管理。 首先,理解MyBatis和Spring的基本概念是整合的基础。MyBatis是一个优秀的SQL映射框架,它允许开发者将SQL...

    mybatis整合spring环境搭建

    在Java开发领域,MyBatis和Spring框架的整合是常见的做法,这有助于实现持久层的高效管理和事务控制。本文将详细介绍如何进行MyBatis与Spring的整合,搭建一个完整的开发环境。 首先,我们需要理解MyBatis和Spring...

    mybatis整合spring实例

    本实例将详细介绍如何将MyBatis与Spring进行整合,以实现一个基于Maven的入门级项目。 首先,MyBatis是一个轻量级的ORM(对象关系映射)框架,它允许开发者通过SQL语句直接操作数据库,同时提供了强大的动态SQL支持...

    mybatis-spring 整合包

    MyBatis-Spring 整合包是专门为将MyBatis持久层框架与Spring应用框架集成而设计的一个组件。这个包的出现旨在简化MyBatis在Spring环境中的配置和使用,使得开发者可以充分利用两者的优点,实现更加灵活和方便的数据...

    Mybatis整合Spring模拟代码

    Mybatis和Spring的整合是Java开发中常见的技术组合,它能够充分利用两者的优点,实现数据库操作的便捷性和应用的灵活性。下面将详细讲解这个主题,包括核心组件、配置过程以及如何进行模拟代码测试。 首先,Mybatis...

    mybatis-spring-1.3.0.jar 下载

    在Java开发领域,MyBatis和Spring框架的结合使用是常见的实践,它们的整合使得数据访问层的构建更为便捷和灵活。本篇文章将围绕"mybatis-spring-1.3.0.jar"这一组件展开,详细讲解其在实际项目中的作用、功能以及...

Global site tag (gtag.js) - Google Analytics