mybatis访问bean时,如果首字母没有小写,则会提示如下错误
Exception in thread “main” org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named ‘Rec_testMapper’ is defined
解决办法:首字母小写 rec_testMapper
package com.zhangzhf.demo;
import org.apache.ibatis.session.SqlSessionFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.zhangzhf.entity.Rec_test;
import com.zhangzhf.mapper.Rec_testMapper;
import com.zhangzhf.service.Rec_testService;
import com.zhangzhf.serviceImpl.Rec_testMapperSqlSessionImpl;
public class Main {
private static ApplicationContext ctx;
static {
ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
}
public static void main(String[] args) {
Rec_testMapper rec_testService = (Rec_testMapper) ctx.getBean("rec_testMapper");
// 测试id=1的用户查询,可根据数据库中的情况修改.
Rec_test rec_test = rec_testService.getRecById("81");
System.out.println("获取用户 ID=1 的用户名:"+rec_test.toString());
//mybatis api 的引用
Rec_testMapperSqlSessionImpl um = new Rec_testMapperSqlSessionImpl();
um.setSqlSessionFactory((SqlSessionFactory)ctx.getBean("sqlSessionFactory"));
Rec_test rec_test_api = um.getRecById("82");
System.out.println("rec_test_api 获取用户 ID=1 的用户名:"+rec_test_api.getThread_num());
}
}