05 2018 档案
摘要:目录 "前言" "准备工作" "MyBatis默认缓存设置" "缓存实现原理分析" "参数localCacheScope控制的缓存策略" "参数cacheEnabled控制的缓存策略" "总结" 前言 提到缓存,我们都会不约而同地认识到这是提高系统性能的必要措施之一,特别是高命中率的缓存设置,将会大
阅读全文
摘要:目录 "类图" "源码解读" "总结" 类图 在正式分析HashMap实现原理之前,先来看看其类图。 源码解读 下面集合HashMap的put(K key, V value)方法探究其实现原理。 将上述HashMap实现插入数据的过程以插入4个数据为示例描述如下: 1.插入第一个数据时,初始化Has
阅读全文
摘要:目录 "问题描述" "解决思路" "在IntelliJ IDEA中调试JDK源码" "在eclipse中调试JDK源码" "总结" 问题描述 最近在研究MyBatis的缓存机制,需要回顾一下HashMap的实现原理。于是在IntelliJ IDEA中单步跟踪调试HashMap的put(K key,
阅读全文
摘要:官网:https://jwt.io/ 文档:https://jwt.io/introduction/ 目录 "什么是JWT" "头部(Header)" "载荷(Payload)" "签名(Signature)" "JWT使用场景" "如何传递JWT" "JWT应用实践" "手动签发JWT" "使用类
阅读全文
摘要:目录 "在settings元素中设置useGeneratedKeys参数" "在xml映射器中配置useGeneratedKeys参数" "在接口映射器中设置useGeneratedKeys参数" 在MyBatis中,允许设置名称为“useGeneratedKeys”参数存在3个位置: 1. 在se
阅读全文
摘要:目录 "1. 使用何种映射器配置" "2. 对象生命周期和作用域" "SqlSessionFactoryBuilder" "SqlSessionFactory" "SqlSession" "映射器实例(Mapper Instances)" 1. 使用何种映射器配置 MyBatis 3之后的SQL语句
阅读全文
摘要:目录 "添加单一记录时返回主键ID" "在映射器中配置获取记录主键值" "获取新添加记录主键字段值" "添加批量记录时返回主键ID" "获取主键ID实现原理" 添加记录后获取主键ID,这是一个很常见的需求,特别是在一次前端调用中需要插入多个表的场景。 除了添加单条记录时获取主键值,有时候可能需要获取
阅读全文
摘要:问题描述 在web项目中同时集成了spring mvc和mybatis。 将jdbc配置参数独立在外部配置文件中,然后通过``引入。 此时在Spring中注入 ,如下所示: 如果直接配置属性sqlSessionFactory,并设置为指定的sqlSessionFactory对象,那么在启动sprin
阅读全文
摘要:目录 写在前面 准备工作 配置数据库驱动 配置数据源 原生集成MyBatis 依赖配置 注册MyBatis核心组件 定义并使用映射器 通过MyBatis-Spring-Boot-Starter集成 默认配置 高级定制 总结与比较 写在前面 最近总是有同事和技术群的朋友提问在Spring Boot中使
阅读全文
摘要:目录 "概述" "XML映射器" "定义xml映射器" "配置xml映射器" "使用xml映射器" "接口映射器" "定义接口映射器" "配置接口映射器" "使用接口映射器" "总结与对比" 概述 映射器是MyBatis中最核心的组件之一,在MyBatis 3之前,只支持xml映射器,即:所有的SQ
阅读全文
摘要:问题描述 通常,我们都会直接使用tomcat提供的脚本执行关闭操作,如下: 但是执行该关闭操作之后,有时候会发现tomcat进程依然存在: 这时我们就只能通过强制杀死进程的方式停止Tomcat了: 。 那么,为什么使用shutdown.sh无法正常停止Tomcat进程呢? 原因分析 停止Tomcat
阅读全文
摘要:使用Maven插件构建Spring Boot应用程序的Docker镜像。 环境准备 1.Linux系统 2.安装JDK,Maven 3.安装Docker 应用实践 1.在应用程序根目录下添加Dockerfile文件 并在Dockerfile中编辑构建内容: 2.在项目pom.xml中添加docker
阅读全文
摘要:问题描述 对于Ubuntu桌面系统我用得不多,最近安装了Ubuntu17.10使用,一直都没遇到什么大的问题,界面风格已经与Windows很相似,总体体验还不错。直到某一天我突然手痒痒把Dock面板从左侧修改为底部,发现了新问题:Settings面板再也打不开了,如下图所示: 如上图所示,设置面板是
阅读全文