mybaits中Error parsing SQL Mapper Configuration...Error parsing Mapper XML... Error resolving class..

mybaits中Error parsing SQL Mapper Configuration...Error parsing Mapper XML... Error resolving class..Could not resolve type alias....Cannot find class...报错

在进行一对多查询的练习时遇到这个错误:

### Error building SqlSession.
### The error may exist in mapper/CourseMapper.xml
### The error occurred while processing mapper_resultMap[courseBookMap]_collection[book]
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. The XML location is 'mapper/CourseMapper.xml'. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'Book'.  Cause: java.lang.ClassNotFoundException: Cannot find class: Book

没有找到class?

idea显示错误的地方也就是划分虚线的地方是

getSession

于是我转头先检查一下配置文件db.properties和mybatis-config.xml,没问题之后,检查一下映射文件

CourseMapper.xml:

 映射文件最常见问题之一就是没有对应包前缀导致出错,比如之前我原先的type只写了一个“book”,后来改成“com.ex02.student.po.book”就可以运行了。

但原以为是JavaType中的book没有补充前缀导致出错,后面补充了“com.ex02.student.po”依旧出现相同问题。反复检查了一遍之后无拼写错误问题。

然后试着直接把javaType去掉后结果运行成功了。

于是去查了一下相关javaType用法与ofType用法区别,以及collection的用法

 原因:

首先我们知道:

JavaType用来指定某个属性的类型,而ofType是指定映射的集合。

而据mybatis最新语法要求是可以不必要多写JavaType的,而且我这里也没必要用到JavaType,因为我指定的是一个book集合,而不是单个字段比如id,cno等。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值