《深入浅出mybatis技术原理与实践》读后心得
来源:互联网 发布:网络协议工程 pdf 编辑:程序博客网 时间:2024/06/05 03:36
昨天看到有朋友免积分分享的《深入浅出mybatis技术原理与实践》这本书,就下载来大致看了一下。因为之前项目中一直都在用mybatis,当时是跟技术总监学习了一下大致的用法,上手之后确实感觉简单好用。遇到问题的时候,都是上度娘来解决,一直没有系统的了解过。看完这本书的介绍之后,有些以前一直拎不清的地方,一下就豁然开朗了。
1.比如下面这个查询的参数类型,我有时用java.util.HashMap,有时候用hashmap,没有报错也没有深究过。看了书才知道,这是系统默认定义的别名(Alisa),对象类型直接全部小写,比如HashMap对应hashmap(ResultSet除外,它没变),基础数据类型则是前面加下划线,比如int对应_int。
<select id="selectUser" resultType="com.system.vo.TUserInfo" parameterType="hashmap">
select *
from t_user_info
where v_user_name=#{username} and v_password=#{password}
</select>
2.另外对于没有定义返回值的sql,比如insert,update方法,可以用参数对象,接收底层悄悄返回的内容。最常见的,比如我们insert一个User对象,User的id在表中是自增的,我们不需要insert完之后,再select才能取到id,只需要在insert完之后,访问之前作为参数的User对象,系统已经把id回填进去了。
3.另外看到mybatis也有缓存机制,想到之前项目中由于使用大表关联,频繁导致数据库崩溃的问题,可以自己实现一套缓存机制:对于大表关联查询的结果,插入一张缓存表中,下一次查询到缓存表中查找,没有再启动大表查询。更进一步,提前根据业务把大部分需要查询的结果都放到缓存表中(应该不会太多),提高缓存命中率,避免在用户访问的高峰期启动大表查询。另外对于一些常用的结果,可以引入Redis内存缓存,用一台性能比较差的部署大型应用比较吃力的那种服务器,作为缓存服务器,辅助正式应用的工作。
- 《深入浅出mybatis技术原理与实践》读后心得
- 读《深入浅出 MyBatis 技术原理与实战》
- 深入浅出Mybatis技术原理与实战: 读书笔记
- 深入浅出Mybatis技术原理与实战: 读书笔记
- 《深入浅出MyBatis--技术原理与实战》读书笔记
- 深入浅出mybatis技术原理与实战读书笔记与源码(一)
- 《深入浅出MyBatis技术原理与实战》预售,欢迎大家关注
- 《深入浅出MyBatis技术原理与实战》修复错误和歧义
- 深入浅出MyBatis技术原理和实战(四)
- 工作后心得
- 考后心得
- COCI试后心得
- 面试后心得
- 「法拉第的故事」读后心得
- 「法拉第的故事」读后心得
- 「法拉第的故事」读后心得
- 「法拉第的故事」读后心得
- 「法拉第的故事」读后心得
- linux静态库与动态库
- 15个你必须知道的Facebook开源项目
- Mac OS快速访问系统根目录的几种方法
- 为何选择 Zephyr?
- Hadoop学习笔记-2.Linux上搭建hadoop伪分布式
- 《深入浅出mybatis技术原理与实践》读后心得
- HTTP协议之chunk介绍
- 目标检测 Fast R-CNN 论文笔记
- Mysql之子查询实例(#代表是注释内容)
- FFMPEG中结构体的分析
- 网络协议
- Ubuntu安装MySQL
- 基础算法(零)---距离和相似性度量
- oracle基础---数据的可恢复性准备