在Spring3和Mybatis3整合的时候,dao层注入'sqlSessionFactory'或'sqlSessionTemplate'会报错解决办法如下
package com.alibaba.webx.MyWebxTest.myWebX.module.dao.impl; import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.support.SqlSessionDaoSupport; import org.springframework.beans.factory.annotation.Autowired; /** * 公用的DAO * @author zkn * */ public abstract class AbstractDao extends SqlSessionDaoSupport{ /** * Autowired 必须要有 */ @Autowired public void setSqlSessionFactory(SqlSessionFactory sqlSessionFactory){ super.setSqlSessionFactory(sqlSessionFactory); } }
原因是因为Mybatis3依赖的jar位 mybatis-spring-1.2.0.jar,这个版本及以上的版本中对SqlSessionDaoSupport类中的'sqlSessionFactory'或'sqlSessionTemplate'注入方式进行了调整。
相关推荐
在整合的配置中很多地方都是可以注入 SqlSessionTemplate 代替 SqlSessionFactory 的注入的。 二、实现代码 1、继承 SqlSessionTemplate 重写 getSqlSessionFactory、getConfiguration 和 SqlSessionInterceptor ...
SpringBoot 整合 MyBatis。解决因Mybatis-Spring版本过高引起的“Caused by: java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required”异常
`MapperScannerConfigurer`支持多种方式注入`SqlSessionFactory`,包括`sqlSessionFactory`、`sqlSessionFactoryBeanName`、`sqlSessionTemplate`和`sqlSessionTemplateBeanName`。然而,`sqlSessionFactory`这种...
spring+mybatis dao层使用动态代理实现org.mybatis.spring.mapper.MapperScannerConfigurer类设置属性指定dao接口以及sqlSessionFactory 或SqlSessionTemplate
首先,集成Mybatis和Spring的关键在于Spring管理Mybatis的SqlSessionFactory和SqlSessionTemplate。SqlSessionFactory是Mybatis的核心对象,用于创建SqlSession,而SqlSessionTemplate则是Spring对SqlSession的封装...
1. **自动扫描Mapper接口**:它能够自动扫描指定包下的Mapper接口,并将这些接口与MyBatis的SqlSessionFactory或SqlSessionTemplate进行绑定,无需在Spring配置文件中手动配置每个Mapper。 2. **事务管理**:...
整合的核心在于将iBatis的SqlSessionFactory和SqlSessionTemplate作为Spring的Bean管理起来,以便在Controller中可以依赖注入并使用。 1. **配置数据库连接**:在Spring的配置文件(如`applicationContext.xml`)中...
在Spring和MyBatis的整合过程中,我们通常会利用Spring的IoC(Inversion of Control,控制反转)特性来管理MyBatis的SqlSessionFactory和SqlSessionTemplate,以及配置MyBatis的Mapper接口和Mapper XML文件,以便...
4. **SqlSessionFactory和SqlSessionTemplate**:Spring提供了一个SqlSessionFactoryBean,用于创建SqlSessionFactory对象,它是MyBatis的主要入口点。SqlSessionTemplate则是Spring提供的一个线程安全的SqlSession...
接下来,配置Spring的Bean定义,包括数据源、SqlSessionFactory和SqlSessionTemplate。在`applicationContext.xml`或通过Java配置类设置这些组件。 ```xml <property name="driverClassName" value=...
在IT行业中,尤其是在Java开发领域,`testweb20200123第一个sqlSessionFactory.zip`这个压缩包文件的标题和描述暗示了一个基于Java的Web应用项目,它使用了MVC(Model-View-Controller)架构模式,并且集成了Spring ...
通过这个包,我们可以将 MyBatis 的 SqlSessionFactory 和 SqlSessionTemplate 配置为 Spring 的 Bean,进而实现依赖注入。同时,`mybatis-spring-1.0.0-RC2-sources.jar` 提供了源代码,便于开发者理解和定制。 在...
1. **依赖注入**:Spring通过@Autowired注解可以自动将MyBatis的SqlSessionFactory或者SqlSessionTemplate注入到我们的Service层,这样我们就可以在Service层直接使用MyBatis进行数据库操作,无需手动创建SqlSession...
这个库提供了Spring与MyBatis之间的桥梁,使得MyBatis的SqlSessionFactory和SqlSessionTemplate可以被Spring管理。 - **创建SqlSessionFactoryBean** 在Spring的配置文件中,我们需要定义一个`...
通过这个库,我们可以将MyBatis的SqlSessionFactory或SqlSessionTemplate直接注入到Spring管理的Bean中,简化了事务管理和DAO的创建过程,提高了代码的可读性和可维护性。 二、MyBatis-Spring的核心组件 1. ...
通过以上步骤,我们就完成了Spring与iBatis的集成配置,包括了数据源、SqlSessionFactory、SqlSessionTemplate、Mapper接口的扫描以及事务管理。这样,我们就可以在Spring的管理下,利用iBatis进行高效、灵活的数据...
这个库提供了Spring和MyBatis之间的桥梁,使得Spring可以管理SqlSessionFactory和SqlSessionTemplate。 2. **创建SqlSessionFactoryBean**:在Spring的配置文件中,定义一个SqlSessionFactoryBean,它会根据配置...
MyBatis-Spring 是 MyBatis 与 Spring 框架的桥梁,它通过提供 Spring Bean 容器对 MyBatis SqlSessionFactory 和 SqlSessionTemplate 的管理,使得事务控制、依赖注入等 Spring 功能能够轻松应用到 MyBatis 中。...
这包括数据源、SqlSessionFactory和SqlSessionTemplate。数据源是连接数据库的关键,SqlSessionFactory是MyBatis的核心对象,用于创建SqlSession。SqlSessionTemplate是Spring对SqlSession的封装,提供了线程安全的...
它提供了Spring Bean与MyBatis SqlSessionFactory、SqlSessionTemplate以及Mapper接口之间的桥梁,简化了配置和管理。 2. **配置集成**:整合过程中,首先需要在Spring的配置文件中引入MyBatis的相关配置,包括数据...