前言
现如今的互联网应用大都是采用?分布式系统架构?设计的,所以?消息队列?已经逐渐成为企业的应用系统?内部通信?的核心手段,
它具有?低耦合、可靠投递、广播、流量控制、最终一致性?等一系列功能。
当前使用较多的?消息队列?有 RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMQ 等,而部分数据库?如 Redis、MySQL 以及 phxsql ,如果硬搞的话,其实也可实现消息队列的功能。
可能有人觉得,各种开源的 MQ 已经足够使用了,为什么需要用 Redis 实现 MQ 呢?
- 有些简单的业务场景,可能不需要重量级的 MQ 组件(相比 Redis 来说,Kafka 和 RabbitMQ 都算是重量级的消息队列)
那你有考虑过用 Redis 做消息队列吗?
这一章,我会结合消息队列的特点和 Redis 做消息队列的使用方式,以及实际项目中的使用,来和大家探讨下 Redis 消息队列的方案。
Mybatis入门
1、什么是Mybatis?
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
2、为什么要用Mybatis?
3、Mybatis快速入门
- 导入开发包
- 准备测试工作
- 创建mybatis配置文件
- 编写工具类测试是否获取到连接
- 创建实体与映射关系文件
- 编写DAO
4、Mybatis工作流程
5、完成CRUD操作
- 增加学生
- 2根据ID查询数据
- 查询所有数据
- 根据id删除
- 修改
- 小细节
- Mybatis分页
6、动态SQL
- 动态查询
- 动态更新
- 动态删除
- 动态插入
Mybatis配置信息
1、映射文件
2、配置文件
关联映射
Mybatis【多表连接】
缓存+Mapper代理+逆向工程
1、Mybatis缓存
2、mybatis和ehcache缓存框架整合
3、Mapper代理方式
4、Mybatis解决JDBC编程的问题
5、Mybatis逆向工程
Mybatis整合Spring
1、Mybatis与Spring整合
Mybatis常见面试题
Mybatis源码——入门
- 为什么要使用MyBatis
- 如何使用MyBatis
Mybatis源码——配置文件解析过程
配置文件解析过程分析
Mybatis源码——映射文件解析过程
1、映射文件解析解析入口
2、解析映射文件
3、Mapper接口绑定过程分析
4、处理未完成解析的节点
Mybatis源码——SQL执行流程
1、SQL执行入口
2、查询语句的执行过程
3、更新语句的执行过程
4、SQL执行过程总结
Mybatis源码——内置数据源
1、内置数据源初始化过程
2、UnpooledDataSource
3、PooledDataSource
Mybatis源码——缓存机制
1、缓存类介绍
2、CacheKey
3、一级缓存
4、二级缓存
Mybatis源码——插件机制
- 插件机制原理
- 实现一个分页插件
《一线大厂Java面试真题解析+Java核心总结学习笔记+最新全套讲解视频+实战项目源码》开源
Java开发优秀开源项目:
-
ali1024.coding.net/public/P7/Java/git
- github.com/spring-projects
总结
本文从基础到高级再到实战,由浅入深,把MySQL讲的清清楚楚,明明白白,这应该是我目前为止看到过最好的有关MySQL的学习笔记了,我相信如果你把这份笔记认真看完后,无论是工作中碰到的问题还是被面试官问到的问题都能迎刃而解!
MySQL50道高频面试题整理: