03 2024 档案
摘要:一、前言 1,代码和准备工作见:mybatis工作原理简介 - seeAll - 博客园 (cnblogs.com); 二、一级缓存 1,效果展示 1.1,测试代码 代码中,使用SqlSession查询过一次数据;本例在此之后,继续添加一段代码,使用同样的SqlSession再次查询,观察结果数据来
阅读全文
摘要:一、前言 本例没有引入spring框架。 简单介绍了mybatis查询数据库数据的流程。 二、准备工作 1,安装数据库 此处安装mysql,官网下载“社区版”,过程百度。 2,安装可视化工具 此处安装sqlyog,官网下载“社区版”,过程百度。 3,创建maven项目,引入mybatis a,ide
阅读全文
摘要:一、前言 ConcurrentHashMap相比于HashMap是线程安全的,大概可以理解为:插入元素一定会成功,删除元素也一定会成功,查找元素也不会出问题。 二、数据结构 如上图所示,有如下数据元素 1,segments数组 Segment对象数组,默认长度16,可以指定长度,最大长度限制为655
阅读全文
摘要:一、前言 本文紧接:HashMap线程不安全实例(jdk1.7) - seeAll - 博客园 (cnblogs.com),介绍jdk8中线程不安全的一些情况,且主要是在上篇文章的基础上和jdk1.7做一个对比。 二、初始化桶数组的例子 1,测试代码 和上篇文章一样。 2,断点设置 同样设置在初始化
阅读全文
摘要:一、前言 jdk1.7中,以put()方法举例,线程不安全的一些情况: 1,初始化HashMap的桶数组的时候,一个线程初始化了桶数组并插入了第一个元素,但是另一个线程不知道初始化好了,也执行了初始化的操作,清除了前面线程已经插入的元素; 2,两个线程同时触发扩容,在翻转同个桶位上的链表时,链表形成
阅读全文