Mybatis之Error building SqlSession.

简介: Mybatis之Error building SqlSession.

我的项目结构如下:

1、介绍问题

最近在学习JavaWeb相关技术,学到了这个Mybatis(相关的知识点稍后出一篇文章详细说明,关键词搜索Mybatis即可)。

关于这个Error building SqlSession.问题,不同的朋友会遇到不同的情况,我这里介绍一种我遇到的情形:我的情况是运行了一个MybatisDemo类,这个是使用了mapper代理的。然后运行爆了Error building SqlSession.的同时,实体类中两个方法也报错了,如下:

2、报错原因

在折腾了两个小时之后,找到了问题所在:没有给实体类User设置别名,但是在UserMapper.xml文件中却使用了"默认别名",所以找不到User类,所以产生错误。

如下图:

3、如何解决

解决方式有两种:

第一种:每次使用都配置User类的全限定名

可以看到,selectAll方法已经不报错了。

第二种:设置别名

在mybatis-config.xml文件中配置typeAliases标签,我使用的是批量设置别名的方式。

批量指定很简单,只要指定包名即可,之后程序会为包下的所有类都自动加上别名,其定义别名的规范就是对应包装类的类名首字母变为小写。如User类的别名就自动设置为user。

相关文章
|
18天前
|
SQL Java 数据库连接
MyBatis之魂:探索核心接口SqlSession的神秘力量
MyBatis之魂:探索核心接口SqlSession的神秘力量
25 3
MyBatis之魂:探索核心接口SqlSession的神秘力量
|
3月前
|
SQL Java 数据库连接
一篇看懂Mybatis的SqlSession运行原理
SqlSession是Mybatis最重要的构建之一,可以简单的认为Mybatis一系列的配置目的是生成类似 JDBC生成的Connection对象的SqlSession对象,这样才能与数据库开启“沟通”,通过SqlSession可以实现增删改查(当然现在更加推荐是使用Mapper接口形式),那么它是如何执行实现的,这就是本篇博文所介绍的东西,其中会涉及到简单的源码讲解。
35 1
|
4月前
|
XML Java 数据库连接
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
【1月更文挑战第2天】 MyBatis 是一款优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。
108 2
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
|
4月前
|
缓存 Java 数据库连接
一文彻底搞懂Mybatis系列(十)之SqlSession、SqlSessionFactory和SqlSessionFactoryBuilder详解
一文彻底搞懂Mybatis系列(十)之SqlSession、SqlSessionFactory和SqlSessionFactoryBuilder详解
374 1
|
9月前
|
SQL 缓存 Java
MyBatis核心 - SqlSession如何通过Mapper接口生成Mapper对象
从 SqlSessionFactoryBuilder - SqlSessionFactory - SqlSession - Mapeper实例对象 的过程
98 0
|
5月前
|
设计模式 缓存 Java
MyBatis原理分析之获取SqlSession
MyBatis原理分析之获取SqlSession
103 0
|
6月前
|
SQL XML Java
Mybatis插入大量数据效率对比:foreach、SqlSession批量、sql
使用mybatis插入数据执行效率对比,对比三种方式(测试数据库为MySQL), 使用 SqlSessionFactory,每一批数据执行一次提交 使用mybatis-plus框架的insert方法,for循环,每次执行一次插入 使用ibatis,纯sql插入
|
12月前
|
XML SQL 安全
MyBatis相关API、Resources、SqlSessionFactoryBuilder、SqlSessionFactory及SqlSession
MyBatis相关API、Resources、SqlSessionFactoryBuilder、SqlSessionFactory及SqlSession
56 0
|
12月前
|
SQL Java 数据库连接
MyBatis源码- SqlSession门面模式 & selectList 源码解析
MyBatis源码- SqlSession门面模式 & selectList 源码解析
53 0
|
设计模式 SQL 安全
Mybatis SqlSession 如果面试官问如何创建?
Mybatis SqlSession 如果面试官问如何创建?
147 0