学习Mybatis中遇到的一些问题

目录

1.Expected one result (or null) to be returned by selectOne(), but found: 5

2.Error parsing SQL Mapper Configuration

 3.resultType和resultMap区别

4.association和collection的区别


1.Expected one result (or null) to be returned by selectOne(), but found: 5

产生原因:select 返回的结果集有多个,所以报错;当返回当个结果集是就不会报错。

解决方案:将方法的返回值修改为list

2.Error parsing SQL Mapper Configuration

Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/apesource/mapper/WebsiteMap.xml

 产生原因:MyBatis连接数据库的配置文件mybatis-config.xml中将mapper文件写入到配置文件中路径错误

解决方案:

 3.resultType和resultMap区别

MyBatis 的每一个查询映射的返回类型都是 resultMap ,只是当我们提供的返回类型是 resultType 时, MyB atis 会自动把对应的值赋给 resultType 所指定对象的属性,而当我们提供的返回类型是 resultMap 时, My Batis 会将数据库中的列数据复制到对象的相应属性上,可用于复制查询。resultMap:适合使用返回值是自定义实体类的情况
resultType:适合使用返回值得数据类型是非自定义的,即jdk的提供的类型。

4.association和collection的区别

 association是用于一对一和多对一,而collection是用于一对多的关系

在 MyBatis 中,通过 元素的子元素 处理一对多级联关系, collection 可以 将关联查询的多条记录映射到一个 list 集合属性中

例如:根据 id 查询用户及其关联的订单信息

 在 MyBatis 中,通过<resultMap>元素的子元素<association>处理一对一级联关系

例如:一个学生基本信息对应一个学籍档案。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值