The specific errors are as follows:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.thinkplatform.dao.UserLogDao’ available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
After investigation, it is found that adding @ repository in front of the implementation class of userlogdaoimpl is OK
package com.thinkplatform.dao.impl;
import java.io.Serializable;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.support.SqlSessionDaoSupport;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import com.thinkplatform.dao.UserLogDao;
import com.thinkplatform.entity.UserLog;
@Repository
public class UserLogDaoImpl extends SqlSessionDaoSupport implements UserLogDao{
public UserLogDaoImpl() {
this.ns = "UserLogMapper";
}
@Autowired
public void setSqlSessionfactory(SqlSessionFactory sqlSessionFactory) {
super.setSqlSessionFactory(sqlSessionFactory);
}
private String ns;
public String getNs(){
return this.ns;
}
public void insert(UserLog userLog) {
this.getSqlSession().insert(ns+".insert",userLog);
}
public void update(UserLog userLog) {
this.getSqlSession().update(ns+".update",userLog);
}
public String get(Serializable id) {
return this.getSqlSession().selectOne(ns+".get",id);
}
}