转载请注明出处哈:http://carlosfu.iteye.com/blog/2238662
1. 整合思路
(1) SqlSessionFactory由Spring作为单例管理
(2) spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。
(3) 持久层mapper(dao)由spring管理
2. 依赖
(1)spring依赖
<spring.version>3.2.8.RELEASE</spring.version> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> </dependency>
(2)spring-mybatis依赖
<mybatis.spring.version>1.2.2</mybatis.spring.version> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis.spring.version}</version> </dependency>
(3) c3p0
<c3p0.version>0.9.2</c3p0.version> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>${c3p0.version}</version> </dependency>
3. spring配置:(spring配置文件放到classpath下spring目录下)
(1)spring总配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" default-autowire="byName"> <import resource="classpath:spring/spring-data.xml" /> <import resource="classpath:spring/spring-mybatis.xml" /> </beans>
(2)spring-data.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:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd" default-autowire="byName"> <context:property-placeholder location="classpath:db.properties"/> <bean name="footballDB" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="${football.driver}"/> <property name="jdbcUrl" value="${football.url}"/> <property name="user" value="${football.username}"/> <property name="password" value="${football.password}"/> <property name="initialPoolSize" value="10"/> <property name="maxPoolSize" value="30"/> <property name="testConnectionOnCheckin" value="false"/> <property name="testConnectionOnCheckout" value="true"/> </bean> </beans>
(3)spring-mybatis配置:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" default-autowire="byName"> <bean id="mysqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="footballDB"/> <!-- mybatis配置文件的位置 --> <property name="configLocation" value="classpath:mybatis-config.xml"/> <!-- domain的包路径,类似MyBatis的typeAliases配置 --> <property name="typeAliasesPackage" value="com.sohu.tv.bean"/> <!-- mapper配置文件的路径,类似MyBatis的mappers配置 --> <property name="mapperLocations" value="classpath:mapper/*.xml"/> </bean> <!-- 扫描接口类的包路径 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.sohu.tv.mapper"/> </bean> </beans>
(4)mybatis-config.xml配置:
<?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> <!--数据库的字段名到pojo类的属性名的自动映射--> <settings> <setting name="useColumnLabel" value="true"/> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> </configuration>
(5)db.properties:
football.driver=com.mysql.jdbc.Driver football.url=jdbc:mysql://localhost:3306/football football.username=root football.password=your password
4. 单元测试:
spring基类测试
package com.sohu.tv.spring; import org.junit.Assert; import org.junit.runner.RunWith; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * spring-mybatis基类测试 * @author leifu * @Date 2015年1月12日 * @Time 下午2:34:21 */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration({"classpath:spring/spring.xml"}) public class MyBatisSpringBaseTest extends Assert { protected final Logger logger = LoggerFactory.getLogger(this.getClass()); }
package com.sohu.tv.spring; import java.util.List; import javax.annotation.Resource; import org.junit.Test; import com.sohu.tv.bean.Club; import com.sohu.tv.mapper.ClubDao; /** * spring-mybatis clubDao测试 * * @author leifu * @Date 2015年8月4日 * @Time 下午12:02:21 */ public class MyBatisSpringClubTest extends MyBatisSpringBaseTest { @Resource(name = "clubDao") private ClubDao clubDao; @Test public void testGetAllClubs() { List<Club> clubList = clubDao.getAllClubs(); if (clubList != null && !clubList.isEmpty()) { System.out.println("clubList size: " + clubList.size()); for (Club club : clubList) { System.out.println(club); } } } }
相关推荐
在Java开发领域,MyBatis和Spring框架的结合使用是常见的实践,它们的整合使得数据访问层的构建更为便捷和灵活。本篇文章将围绕"mybatis-spring-1.3.0.jar"这一组件展开,详细讲解其在实际项目中的作用、功能以及...
MyBatis-Spring是MyBatis与Spring框架的整合组件,其主要目的是简化在Spring应用中集成MyBatis的过程,使两者能够无缝协作。mybatis-spring-1.3.0.jar是这个中间件的特定版本,包含了实现这种集成所需的所有类和资源...
MyBatis-Spring 是一个将 MyBatis ORM 框架与 Spring 框架集成的库,使得在 Spring 应用中使用 MyBatis 变得更加方便。mybatis-spring-1.3.3.jar 文件是这个集成库的一个版本,提供了对 MyBatis 1.3.3 和 Spring 的...
MyBatis-Spring 1.3.1.jar是MyBatis与Spring框架深度整合的一个重要组件,它允许开发者在Spring环境下无缝地使用MyBatis。这个版本是官方发布的最新稳定版,经过实际测试,确保了其稳定性和兼容性。 MyBatis-Spring...
1. **自动事务管理**:整合Spring的声明式事务管理,使得在MyBatis中可以方便地进行事务控制。 2. **SqlSession管理**:避免手动创建和关闭SqlSession,自动在Spring的上下文中处理SqlSession生命周期。 3. **...
四、SpringMVC与Spring整合 1. DispatcherServlet配置:在web.xml中配置DispatcherServlet,它是SpringMVC的前端控制器,负责接收请求并分发给处理器。 2. Controller定义:创建@Controller注解的类,实现业务逻辑,...
mybatis-spring是一个用于整合MyBatis与Spring的库,1.1.1版本提供了一些关键特性: 1. **SqlSessionTemplate和SqlSessionFactoryBean**:这两个类是mybatis-spring的核心,它们帮助我们在Spring环境中无缝地使用...
通过这个起步依赖,我们可以快速地搭建起Spring Boot与MyBatis的整合环境,无需手动配置大量的XML或Java代码。 1. **集成过程** 集成MyBatis到Spring Boot项目的第一步是添加对应的依赖。在`pom.xml`文件中,我们...
《MyBatis-Spring整合源码深度解析》 在Java开发领域,MyBatis和Spring是两个非常重要的框架,它们分别在持久层和容器管理方面提供了强大的支持。MyBatis-Spring则是这两个框架的完美结合,它使得MyBatis与Spring...
MyBatis-Spring 是 MyBatis 框架与 Spring 框架的桥梁,它使得 MyBatis 可以无缝地融入到 Spring 的应用环境中,实现两者的高效协作。mybatis-spring-1.2.0-bundle.zip 文件是一个包含 MyBatis-Spring 1.2.0 版本的...
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。
mybatis-spring-spring.tar.gz.jar 各个版本,免费下载。 mybatis-spring-spring.tar.gz.jar linux 各个版本,免费下载。 mybatis 与 spring 整合的 jar 包 linux 各个版本,免费下载。