- 博客(19)
- 收藏
- 关注
原创 HashMap的fail-fast机制
1.1 HashMap的fail-fast机制代码展示 /** * HashMap的一个内部临时计数变量,用于HashIterator中快速失败 */ transient int modCount; abstract class HashIterator { Node<K,V> next;...
2019-12-22 11:41:57 785
原创 JVM参数记录
分析gc日志后,经常需要调整jvm内存相关参数,常用参数如下-Xms:(memory start)初始堆大小,默认为物理内存的1/64(<1GB);默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制-Xmx:(memory max)最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM...
2019-12-21 11:45:13 199
原创 CMS GC 日志分析 笔记
public static void main(String[] args) throws InterruptedException { // list集合全局引入byte数组, 是为了每次YGC后,byte[]不被回收,直接进入Old区 List<byte[]> holdList = new ArrayList<>(); ...
2019-12-21 11:42:32 234
原创 Redis单点安装(多端口启动)和常用命令
Redis一、Redis简介1.1 NoSQLNoSQL(Not -Only SQL), 泛指非关系型数据库,作为关系型数据库的良好补充。对于传统的关系型数据库应对超大规模和高并发的SNS(社交网络服务)类型的web纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:对数据库高并发读写的需求对海量数据的高效率存储和访问的需求对数据库的高可扩展性和高可用性的需求1.2 No...
2019-10-27 23:09:24 634
原创 常用工具类
1 数据脱敏工具类 /** * 指定字符串脱敏 * @param originalData 原始数据 * @param displayPrefixLen 前缀显示长度 * @param displaySuffixLen 后缀显示长度 * @return */ public static String desensitize...
2019-10-24 23:23:35 238 1
原创 Git常用命令总结
git 教程站点https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d599b3aed534aaab22a0db6c4e07fd0000git init 将空白的普通文件夹(路径不要有中文)变成被git管理的文件仓库.(创建完成后会出现隐藏....
2019-10-21 22:40:34 152
原创 Liunx常用命令总结
1. 权限类[root@localhost ~]#root 当前用户(超级用户)localhost主机名~ 当前目录,表示家目录。超级用户的家目录/root;普通用户家目录在/home/{username}下(/ 为根目录)# 超级用户 (如果为 $ 表示普通用户)su {username}切换到{username}用户。如果切到root用户。需要输入密码。pwd与...
2019-09-28 17:07:34 207 2
原创 查看CentOS版本/查看防火墙开放端口
1. 查看CentOS 版本ps: 本帖演示CentOS版本为CentOS 7.6 版本1.1 使用 cat /etc/redhat-release1.2 使用 rpm -q centos-release如果没有安装rpm请使用(yum install rpm )安装2 查看防火墙情况2.1 防火墙状态方法一:firewall-cmd --state方法二systemctl...
2019-09-28 16:46:03 7493
原创 Springboot和thymeleaf整合,Error resolving template [index]
1. 错误描述Springboot 和thymeleaf整合过程中出现错误信息:org.thymeleaf.exceptions.TemplateInputException: ** Error resolving template [index], ** template might not exist or might not be accessible by any of the con...
2019-08-22 00:33:25 14330 4
原创 浅析HashMap源码系列----resize过程(JDK1.8版)
1 java.util.HashMap#resize()方法源码解析保存原来数据(扩容阈值、容量大小、具体数据等)判断oldCap。如果大于0,说明之前已经初始化过。如果旧容量已经超过最大容量,将阈值设置到最大。返回原有数组,让其碰撞。如果新容量是旧容量右移一位得到。新容量大于默认容量16,小于最大容量,将原来阈值扩大两倍。如果旧阈值大于零。初始化容器,并设置为阈值初始...
2019-07-21 00:24:20 451
原创 浅析HashMap源码系列----get过程(JDK1.8版)
1 HashMap中get方法概述通过key的Hash找到唯一的桶位。寻找方法和put过程中是相同的,(capacity-1)&hash找到具体桶位,现在有两种情况如果首元素的key和目标key相同,则返回首元素。如果首元素的key不相同。判断有没有第二个元素如果没有,在该桶位处就没必要再找,直接返回null。如果有第二元素。判断首元素类型如果为链表,采用do-wh...
2019-07-20 14:52:42 544 2
原创 浅析HashMap源码系列----put过程(JDK1.8版)
hashmap 的put过程, hashmap可存空值,为何ConcurrentHashMap 不能
2019-07-20 12:11:42 673 3
原创 一条SQL语句的执行流程
1 一条SQL语句的执行流程如图:为MySQL的逻辑架构图大体来说,MySQL可以分为Server层和存储引擎层两部分。Server层包括连接器、查询缓存、分析其、优化器、执行器等,涵盖MySQL的大多数核心功能,以及所有内置函数(如时间、日期、数学、加密函数等等),所有跨存储引擎的功能都是在这一层实现的。比如存储过程、触发器、视图等。存储引擎层负责数据的存储和提取。其架构模式是插件...
2019-05-31 23:18:27 1172
原创 集合和泛型的关系
1 List 、 List 、 List<?>的区别List:可以在集合中装入任何对象。但是在正常情况下,一般集合中只存放一种元素。List: 可以将任意对象装入List集合中,简单的可以看成和第一种是一样的。List<?>: 问号在正则表达式中可以匹配任何字符,List< ?>称为通配符集合。可以接受任何类型的集合引用赋值,不能 添加 任何元素,但...
2019-05-29 23:06:43 488
原创 ThreadLocal常用方法浅析、使用场景及注意事项
1. ThreadLocal详解JDK1.2版本起,Java就提供了java.lang.ThreadLocal,ThreadLocal为每个使用线程都提供独立的变量副本,可以做到线程间的数据隔离,每个线程都可以访问各自内部的副本变量。线程上下文ThreadLocal又称为"线程保险箱",ThreadLocal能够将指定的变量和当前线程进行绑定,线程之间彼此隔离,持有不同的对象实例,从而避免了数...
2019-05-29 00:05:48 3432
原创 简述常见三种GC和四种GC回收器
1 常见的三种Garbage Collection1.1 Minor GC从年轻代空间(包括Eden和Survivor区域)回收内存被称为Minor GC :当Eden区域满了,jvm无法为新对象分配内存,会触发Minor GC;新生代好进行标记和复制操作,就不会存在内存碎片。年轻代中指向永久代中的引用,在标记阶段就会忽略。stop-the-world。原因是Eden区中对象认为是垃...
2019-05-04 14:11:33 4795 1
原创 安装idea步骤、常用插件安装、最最最常用设置
安装idea步骤、常用插件安装、最最最常用设置IDEA的安装常用插件安装Alibaba Java Coding Guidelines(阿里巴巴开发规约)Translation(翻译插件)Rainbow Brackets(彩虹括号)Background Image Plus(更换背景)FindBugs IDEA(辅助寻找bug)Maven Helper常用设置编码设置IDEA的安装从 Intel......
2019-04-25 23:38:48 1272
原创 Docker社区版安装后,使用docker命令出现resh install - could not read CA certificate. The system cannot find
1 .软件安装背景因Docker hub的外国网站的龟速下载。所以在前期安装的时候使用的是阿里的docker toolbox,但是在后面的使用中发现不怎么好用,还是乖乖去docker hub上下载wind版本的docker(https://hub.docker.com/editions/community/docker-ce-desktop-windows)。安装Docker完成后,下载Kit...
2019-03-30 11:50:18 267
原创 Idea导入Maven工程无法next | Idea 的Event Log 出现 Unable to import maven project: See logs for details
1.1 问题描述1.在Idea中导入Maven工程无法Next(无论选不选Search for projects recursively)2.打开已经导入Idea中的工程出现Unable to import maven project: See logs for details;在Maven Projects的标签中无法选择添加Maven工程。1.2 问题思考打开Idea自带的log日...
2019-02-17 11:18:17 1669
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人