<?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:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
<!-- 配置数据源、事务管理策略、开启声明式事务
(统一由spring管理mapper类型和SqlSessionDaoSupport类型的DAO事务) -->
<jdbc:embedded-database id="dataSource">
<jdbc:script location="classpath:org/mybatis/spring/sample/db/database-schema.sql" />
<jdbc:script location="classpath:org/mybatis/spring/sample/db/database-test-data.sql" />
</jdbc:embedded-database>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<tx:annotation-driven />
<!-- 定义 myBatis的sqlSessionFactory
1、当使用MapperScannerConfigurer时不需要configLocation定义(
1:mapperLocations可以批量载入mapper,但是MapperScannerConfigurer扫描mapper后不会将已存在的mapper加入到Configuration中
2:也可以定义configLocation文件,在里面设置settings和typeAliases等来覆写默认的配置
3:如果使用了configLocation文件,并且里面也定义了mappers,那么在MapperScannerConfigurer扫描动作中就不会加入已经存在的mapper了
(同mapperLocations情况一样)
4:综上所述:建议采用扫描来完成mapper的注册,并且在sqlSessionFactory的bean配置中不需要设置mapperLocations,
如果设置了configLocation文件,那么configLocation文件里也不需要再设置mapper了
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>
<!-- 扫描 mappers 自动配置 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="mapper" />
</bean>
<!-- 直接声明mapper的代理实现:!!可能会与扫描动作重复,建议采用扫描来完成 -->
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="org.mybatis.spring.sample.mapper.UserMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<!-- 继承 SqlSessionDaoSupport,在dao里可以直接调用mapper xml里的方法,因为所有mapper已经扫描并注册到Configuration里了。
SqlSessionDaoSupport模式和mapper接口模式的事务是一致的,由spring管理-->
<bean id="userDao" class="dao.UserDaoImpl">
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
<!-- service示例 -->
<bean id="fooService" class="service.FooServiceDaoImpl">
<property name="userDao" ref="userDao" />
<!-- 或者使用userMapper -->
<property name="userMapper" ref="userMapper" />
</bean>
</beans>
分享到:
相关推荐
Spring、Mybatis和Spring MVC是Java开发中常用的三大框架,它们各自负责不同的职责,并通过合理的集成,构建出高效、灵活的Web应用。本整合包包含了这三个框架的核心组件和依赖,适用于学习、测试或快速搭建项目。 ...
SpringMVC、Spring和Mybatis是Java开发中最常用的三大框架,它们共同构成了企业级Web应用的基础架构。在本文中,我们将深入探讨这三个框架的核心概念、集成方式以及它们如何协同工作来构建高效、灵活的开发环境。 ...
- **Spring JDBC和MyBatis集成**:Spring可以方便地与MyBatis集成,简化数据库操作。 - **Spring MVC**:Spring的Model-View-Controller架构模式,用于构建Web应用程序。 - **Spring Boot集成**:Spring可以与...
在Java Web开发中,SpringMVC、Spring和Mybatis是三大核心组件,它们共同构建了所谓的"SSM"(Spring MVC、Spring、Mybatis)架构。这个架构是企业级应用开发的常用选择,因为它提供了灵活的控制层、强大的依赖注入...
Spring MVC、Spring 和 Mybatis 是 Java 开发中常用的三大框架,它们各自负责不同的职责:Spring MVC 处理 Web 层的请求分发,Spring 提供依赖注入和事务管理,而 Mybatis 则是轻量级的持久层框架,专注于 SQL 的...
SSM框架是Java Web开发中常用的三大组件:Spring MVC、Spring和MyBatis的组合,它们各自负责不同的职责,共同构建了一个高效、灵活的Web应用解决方案。下面将详细阐述这三个框架的核心概念、功能以及如何协同工作。 ...
Spring Boot的自动配置和起步依赖让这些组件的集成变得更加简单。 在实际开发中,每个服务可能都会包含上述四个组件的不同组合。例如,一个服务可能专注于业务逻辑,使用Spring Boot和Spring MVC处理HTTP请求,而...
这个简单的登录示例为学习和理解Struts、Spring和MyBatis的集成提供了一个基础。通过深入研究和实践这个例子,开发者可以更好地掌握这些框架的核心概念和用法,为进一步的Web开发打下坚实的基础。
SSM框架,即Spring、Spring MVC和MyBatis的组合,是Java Web开发中常用的三大框架。在本项目中,我们使用的是Spring作为整体的依赖注入容器,Spring MVC处理Web请求,而MyBatis则作为持久层框架,负责数据库交互。...
mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring MVC 的集成 mybatis实战教程mybatis in action之七实现mybatis分页源码下载 mybatis实战教程mybatis in ...
Struts2、Spring和MyBatis是Java Web开发中常用的三大框架,它们分别负责MVC模式中的Action层、业务逻辑层和服务数据访问层。而Maven则是项目管理和构建的工具,能够有效地管理项目的依赖关系。这四个组件的整合,...
Spring MVC和MyBatis是Java开发中常用的两个框架,它们分别负责Web层和持久层的管理。Spring MVC作为Spring框架的一部分,提供了强大的Model-View-Controller(MVC)架构模式,使得开发人员能够轻松地处理HTTP请求和...
Spring框架和MyBatis作为Java开发中的常用工具,提供了高效、灵活的数据访问层。本文将深入探讨如何在Spring和MyBatis集成环境中调用Oracle数据库的存储过程,包括无返回值、返回结果集以及返回多个结果的情况。 ...
Spring MVC、Spring 和 MyBatis 是Java开发中常用的三大开源框架,它们共同构建了一个高效、灵活的Web应用程序开发体系。Spring MVC是Spring框架的一部分,主要负责处理HTTP请求和响应,提供MVC(Model-View-...
Spring、Spring MVC和MyBatis是Java开发中最常用的三大框架,它们共同构建了一个灵活、高效且易于维护的Web应用程序。这个整合项目展示了如何将这三个框架协同工作,为开发者提供了一个全面理解它们集成方式的实例。...
SSM框架是Java web开发中常用的三大框架组合,包括Spring、MyBatis和SpringMVC。这个"spring mybatis springmvc jar包"是用于搭建基于SSM架构的应用的基础组件集合。下面将详细介绍这三个框架以及它们在整合过程中的...
SpringMVC和Struts2相比,提供了更轻量级的控制反转(IoC)和更好的集成Spring生态系统的优势。 Spring全家桶中常见的注解包括@Controller、@RestController、@Service、@Repository、@Component、@Configuration、...
在"Struts2SpringMybatis框架整合"中,首先需要理解这三者的核心功能和整合的必要性。Struts2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它处理HTTP请求并分发到相应的Action,Action处理业务...
集成Struts2、Spring和MyBatis时,需要配置相应的配置文件,如struts.xml、spring-context.xml和mybatis-config.xml。Struts2的配置主要涉及Action和Interceptor,Spring的配置涉及Bean定义和数据源,MyBatis的配置...
Spring MVC、Spring、MyBatis 是Java开发中常用的三大框架,它们共同构成了经典的SSM(Spring、SpringMVC、MyBatis)架构,用于构建高效、灵活的企业级Web应用程序。Jackson是Java中广泛使用的JSON处理库,而Logback...