码迷,mamicode.com
首页 > 数据库 > 详细

springmvc与mybatis整合时 java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required 异常

时间:2018-04-27 13:59:34      阅读:309      评论:0      收藏:0      [点我收藏+]

标签:tsql   framework   tis   今天   autowire   实现类   sql   mapper   epo   

今天在整合springmvc与mybatis时,启动服务器遇到这样一个问题,

 by: java.lang.IllegalArgumentException: Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required at org.springframework.util.Assert.notNull(Assert.java:112)

异常的意思是  缺少sqlSessionFactory 或者是  sqlSessionTemplate

我的dao层是利用继承SqlSessionDaoSupport  然后可以直接通过this.getSqlSession() 来进行数据库的操作。

后来通过搜索以及查看源代码发现,mybatis-spring 1.2版本没有自动注入sqlSessionFactory

解决方法是手动注入

1 public class BaseDaoImpl extends SqlSessionDaoSupport {
2     
3     @Autowired
4     public void setSqlSessionFactory(SqlSessionFactory sqlSessionFactory){  
5             super.setSqlSessionFactory(sqlSessionFactory);  
6     }
7 }

然后在将dao实现类继承BaseDaoImpl就可以使用了

 1 @Repository
 2 public class PersonDaoImpl extends BaseDaoImpl implements PersonDao {
 3 
 4     String ns = "cn.tx.mapper.PersonMapper.";
 5     @Override
 6     public void savePerson(Person p) {
 7         this.getSqlSession().insert(ns+"savePerson", p);
 8     }
 9 
10     @Override
11     public Person selectPersonById(Integer personId) {
12         return this.getSqlSession().selectOne(ns+"selectPersonById", personId);
13     }
14 
15     @Override
16     public void update(Person p) {
17         this.getSqlSession().update(ns + "update", p);
18     }
19 
20     @Override
21     public void delete(Integer personId) {
22         this.getSqlSession().delete(ns + "delete", personId);
23     }
24 
25     @Override
26     public List<Person> selectPersonByCondition(QueryCondition qc) {
27         return this.getSqlSession().selectList(ns + "selectPersonByCondition", qc);
28     }
29 
30 }

 

springmvc与mybatis整合时 java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required 异常

标签:tsql   framework   tis   今天   autowire   实现类   sql   mapper   epo   

原文地址:https://www.cnblogs.com/cat-fish6/p/8961830.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!