欢迎光临散文网 会员登陆 & 注册

2023版千锋教育MyBatis教程零基础速成(核心讲解,全面掌握)

2023-07-05 00:28 作者:狐狸半面添  | 我要投稿

课程认认真真看完了,感谢老师,总结了一些注意事项、问题与讨论。

1.P13:多参数的参数传递为什么需要加 @Param 注解,老师是从 形参 角度进行讲解,老师的讲解我觉得更倾向于是更深层次的概念,个人觉得会让我们普通学生听起来比较抽象。我搜了下直接从 mybatis 源码角度即底层维护了一个map集合与对于其key设置的角度进行分析,让我觉得比较更加切实理解。我结合老师说的写了一篇关于多参数的参数传递报错问题源码层面分析的博客:https://blog.csdn.net/qq_62982856/article/details/131526746

2.P19:老师讲的 mybatis 分页查询讲的很简单,提到了mybatis 的分页插件影响性能,不如自己进行分页封装,遗憾老师没有讲解一个自定义分页实例。

3.P22:老师写的 sql 语句很有问题,出现了两个 id 列,导致了在 ResultMap 配置时的一系列的问题,即使老师最后能够查询 user 的多条记录,但每个 User 的id都是部门的id值,逻辑有问题。所以在sql语句中用别名对两个 id 进行区分,那么在 <Collection> 标签中使用 <id> 标签是没有语法和逻辑问题的。

4.P30:在 PDF的50页,有一张来自 MyBatis中文网 的截图,截图中有一段文字是 “而且返回的对象被认为是只读的,因此对它们进行修改可能会在不同线程中的调用者产生冲突” ,这个 “因此” 两字改成 “因为” 是不是会更加合适。

5.P30:需要注意几点

1.数据是先缓存到 一级缓存 中的,直到 close() 关闭会话时才会将当前 sqlSession 会话的一级缓存数据移交给 sqlSessionFactory 二级缓存。那换句话说就是,二级缓存数据是在一级缓存关闭后才有的。

2.当开启二级缓存后,缓存执行顺序是:二级缓存 --> 一级缓存 --> 数据库。

6.P31:缓存框架 EHCache 了解即可,用的更多的是 redis。

2023版千锋教育MyBatis教程零基础速成(核心讲解,全面掌握)的评论 (共 条)

分享到微博请遵守国家法律