简介:
Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required
这个错误估计很多人遇到过,特别都用注解的情况下。注意下面标红的部分,有兴趣的可以看下sqlSessionTemplate源码,一看就知道了。
配置文件:applicationContext.xml
<!-- SqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:mybatis-config.xml"></property> </bean> <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg index="0" ref="sqlSessionFactory" /> </bean>
Dao实现代码:
public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {
private SqlSessionTemplate sqlSessionTemplate;
public SqlSessionTemplate getSqlSessionTemplate() {
return sqlSessionTemplate;
}
@Resource(name="sqlSessionTemplate")
public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
super.setSqlSessionTemplate(sqlSessionTemplate);
}
@Override
public void save(User user) {
}
@Override
public List<User> findAll() {
List<User> users = getSqlSession().selectList(
// User.class.getClass().getName() + ".findAll");
"com.bankht.demo.entity.User.findAll");
for (int i = 0; i < users.size(); i++) {
System.out.println(users.get(i).getUsername());
}
return users;
}
相关推荐
在整合的配置中很多地方都是可以注入 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=...
通过这个包,我们可以将 MyBatis 的 SqlSessionFactory 和 SqlSessionTemplate 配置为 Spring 的 Bean,进而实现依赖注入。同时,`mybatis-spring-1.0.0-RC2-sources.jar` 提供了源代码,便于开发者理解和定制。 在...
在IT行业中,尤其是在Java开发领域,`testweb20200123第一个sqlSessionFactory.zip`这个压缩包文件的标题和描述暗示了一个基于Java的Web应用项目,它使用了MVC(Model-View-Controller)架构模式,并且集成了Spring ...
这个库提供了Spring与MyBatis之间的桥梁,使得MyBatis的SqlSessionFactory和SqlSessionTemplate可以被Spring管理。 - **创建SqlSessionFactoryBean** 在Spring的配置文件中,我们需要定义一个`...
通过这个库,我们可以将MyBatis的SqlSessionFactory或SqlSessionTemplate直接注入到Spring管理的Bean中,简化了事务管理和DAO的创建过程,提高了代码的可读性和可维护性。 二、MyBatis-Spring的核心组件 1. ...
1. **依赖注入**:Spring通过@Autowired注解可以自动将MyBatis的SqlSessionFactory或者SqlSessionTemplate注入到我们的Service层,这样我们就可以在Service层直接使用MyBatis进行数据库操作,无需手动创建SqlSession...
通过以上步骤,我们就完成了Spring与iBatis的集成配置,包括了数据源、SqlSessionFactory、SqlSessionTemplate、Mapper接口的扫描以及事务管理。这样,我们就可以在Spring的管理下,利用iBatis进行高效、灵活的数据...
MyBatis-Spring 是 MyBatis 与 Spring 框架的桥梁,它通过提供 Spring Bean 容器对 MyBatis SqlSessionFactory 和 SqlSessionTemplate 的管理,使得事务控制、依赖注入等 Spring 功能能够轻松应用到 MyBatis 中。...
1. **Bean配置**:需要在Spring配置文件中定义SqlSessionFactory和SqlSessionTemplate,或者使用MapperFactoryBean来加载MyBatis的Mapper接口。 2. **事务管理**:Spring可以控制MyBatis的事务,通过...
这包括数据源、SqlSessionFactory和SqlSessionTemplate。数据源是连接数据库的关键,SqlSessionFactory是MyBatis的核心对象,用于创建SqlSession。SqlSessionTemplate是Spring对SqlSession的封装,提供了线程安全的...
这个库提供了Spring和MyBatis之间的桥梁,使得Spring可以管理SqlSessionFactory和SqlSessionTemplate。 2. **创建SqlSessionFactoryBean**:在Spring的配置文件中,定义一个SqlSessionFactoryBean,它会根据配置...