Mybatis之Error building SqlSession.

文章介绍了在学习JavaWeb时遇到的MybatisErrorbuildingSqlSession问题,原因是实体类User没有设置别名,但在映射文件中使用了默认别名。解决方案包括在每个引用处配置User类的全限定名,或者在mybatis-config.xml中批量设置类型别名,自动为包下的类添加别名。
摘要由CSDN通过智能技术生成

我的项目结构如下:

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。

回答: 错误构建SqlSession的问题可能有多种原因。根据引用\[1\]中的描述,可能是在写mybatis时,对sqlSessionFactory的配置出现了问题。在执行sqlSessionFactory.openSession(false)之后,将其改回true或置空时,一直报错。另外,根据引用\[2\]中的描述,错误可能是由于类型转换问题导致的。具体地说,可能是将Long类型转换为Integer类型时出现了错误。此外,根据引用\[3\]中的描述,错误也可能是由于资源过滤问题导致的。解决方法是手动配置资源过滤,确保配置文件能够被正确导出。根据提供的信息,无法确定具体的错误原因和解决方法。建议检查代码中的配置和类型转换,以及确保资源过滤配置正确。 #### 引用[.reference_title] - *1* [Error building SqlSession.解决办法](https://blog.csdn.net/cxyxiaoliu/article/details/120293431)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Error building SqlSession问题](https://blog.csdn.net/qq_45898383/article/details/123752064)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Error building SqlSession.一招解决](https://blog.csdn.net/weixin_43654123/article/details/121447006)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逐梦苍穹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值