自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android_la的博客

研究nacos、redis、设计模式、并发等前沿技术。搭建了自己的博客https://zilianggan.gitee.io/

  • 博客(23)
  • 资源 (25)
  • 收藏
  • 关注

原创 GC中的STW、OopMap、safePoint安全点、safeRegion

文章目录一. 问题背景二. 为什么会有safePoint三. safePoint是什么四. 线程停顿的方式4.1 抢先式中断4.2 主动式中断五. safePoint出现在哪些位置六. safeRegion七. 总结一. 问题背景遇到一个面试题“垃圾收集器”,其中涉及到了safepoint安全点,所以今天了解一下safepoint安全点此笔记仅供自己参考,如有错误请指正参考:GCRoot与safePoint二. 为什么会有safePointGC Root包括以下对象:虚拟机栈中引用的对象方

2020-05-31 11:06:18 1098

原创 jvm类加载器

文章目录一. 问题背景二. 类加载器2.1 简介2.2 类与类加载器三. 双亲委派模型Parents Delegation Model3.1 自带的3种类加载器3.1.1 启动类加载器Bootstrap ClassLoader3.1.2 扩展类加载器Extension ClassLoader3.1.3 应用程序类加载器Application ClassLoader3.2 详述双亲委派模型3.2.1 双亲委派模型工作过程一. 问题背景遇到一个面试题“简述java类加载机制”,今天了解一下类加载器此笔记仅

2020-05-30 19:54:47 177

原创 jvm类加载

文章目录一. 问题背景二. 类加载2.1 简介2.2 加载阶段2.3 链接阶段2.3.1 验证阶段2.3.2 准备阶段2.3.3 解析阶段2.4 初始化阶段2.4.1 导致类初始化的情况2.4.2 不导致类初始化的情况一. 问题背景遇到一道面试题“简述java类加载机制”。今天了解一下类加载。此笔记仅供自己参考,如有错误请指正参考:java中级程序员必会的教程,解密JVM【黑马程序员出品】二. 类加载我们编译的java代码都是以.java格式文件保存的,而它是不能被jvm执行。jvm需要将.ja

2020-05-29 16:29:36 222

原创 Java对象什么时候死亡、finalize()方法的执行过程

文章目录一. 问题背景二. 储备知识2.1 引用2.1.1 强引用Strong Reference2.1.2 软引用Soft Reference2.1.3 弱引用Weak Reference2.1.4 虚引用Phantom Reference2.2 可达性算法2.3 哪些对象可以作为GC Root一. 问题背景遇到一个面试题“GC的两种判定方法(如何判断一个对象是否存活?)”,其中涉及引用计数法和可达性算法,而当一个对象经过可达性分析,会涉及两次标记,其中又涉及finalize()。因此今天了解一下Ja

2020-05-25 14:20:50 370

原创 Java的对象组成简介

文章目录一. 问题背景二. 对象的组成2.1对象头Object Header2.1.1 Mark Word2.1.2 Klass Word(指向类的指针)2.1.3 数组长度array length2.2 实例数据Instance Data2.3 对齐填充字节padding一. 问题背景遇到一个面试题“对象的内存布局”,其中涉及对象的组成。今天了解一下Java对象组成。(以HotSpot虚拟机为例子)此笔记仅供自己参考,如有错误请指正参考:Java的对象头和对象组成详解二. 对象的组成对象的组成

2020-05-24 15:28:39 4821

原创 Jav的空闲链表简介

一. 问题背景有一条面试题”对象的创建方法“涉及空闲链表,与之对应的内存分配规则还有指针碰撞,今天来简单的了解一下指针碰撞。此笔记仅供自己参考,如有错误请指正参考自:一张图解释指针碰撞和空闲列表二. 空闲链表简单介绍空闲链表...

2020-05-24 11:22:54 13023

原创 对象分配流程、栈分配与TLAB的区别

文章目录一. 回顾二. 区别2.1 栈分配2.2 TLAB2.3 总结三. 对象分配流程一. 回顾前面了解了jvm中的逃逸分析和jvm中的TLAB,今天对两者的区别进行分析。参考自:关于栈上分配和TLAB的理解此笔记仅供自己参考,如有错误请指正二. 区别2.1 栈分配栈分配是属于逃逸分析里面的,详情见jvm中的逃逸分析。当一个对象没有逃离当前方法或线程,其生命周期与方法一致,随着栈帧出栈而销毁,那么我们jvm的逃逸分析技术则不将该对象分配在堆中,而是分配在栈中(即栈分配),将对象分解成成员标

2020-05-23 18:48:24 358

原创 jvm中的TLAB

文章目录一. 回顾二. TLAB的来源2.1 逃逸分析2.2 指针碰撞一. 回顾前面了解了jvm中的逃逸分析,今天了解一下TLAB(Thread Local Allocation Buffer)。本文仅供自己参考,如有错误请指正参考自:浅析java中的TLAB二. TLAB的来源有两个:逃逸分析;指针碰撞2.1 逃逸分析详情见jvm中的逃逸分析2.2 指针碰撞...

2020-05-23 16:19:28 1123

原创 Java的指针碰撞简介

一. 问题背景在了解TLAB的来源时涉及指针碰撞此笔记仅供自己参考,如有错误请指正二. 指针碰撞2.1 简介2.2 碰撞的可能情况还有其他情况不一一详述,在此只是为了表达什么是指针碰撞而已...

2020-05-23 15:32:42 3763

原创 jvm中的逃逸分析

文章目录一. 问题背景二. 逃逸分析2.1 什么是逃逸分析?2.2 逃逸分析的jvm参数2.3 一个对象的逃逸状态2.3.1 全局逃逸GlobalEscape2.3.2 参数逃逸ArgEscape2.3.3 没有逃逸2.4 逃逸分析后,有什么作用(好处)?(即逃逸分析优化)2.4.1 锁消除EliminateLocks2.4.2 标量替换Scalar Replacement2.4.3 栈分配三. 总结一. 问题背景遇到一个面试题堆中的分区:Eden,survival(from+to),老年代,各自的特点

2020-05-22 21:31:56 565

原创 TreeMap常见问题

一. 回顾前面TreeMap原理(浅谈)了解了TreeMap的实现。现对TreeMap常见问题作一下总结本文仅供自己参考,如有错误请指正二. 常见问题2.1 如何用TreeMap实现一致性hash?一致性hash,笔者综合博客文章,它是源自MemCache引发的。MemCache的详细介绍参考:MemCache详细解读什么是MemCache?MemCache是一个内存对象缓存系统。用于动态web应用以减轻数据的负载。通过在内存中缓存数据和对象减少访问数据库的次数,从而提高网站访问的速度。Me

2020-05-15 18:50:25 430

原创 TreeMap原理(浅谈)

一. 回顾前面了解了LinkedHashMap原理(浅谈),今天了解一下TreeMap。二. 储备知识在了解TreeMap前,了解以下两个知识比较容易理解:Comparable和Comparator;一致性hash2.1 Comparable和Comparator详情见Comparable和Comparator的知识点以及两者的区别2.2 一致性hash参考MemCache详细解读三. TreeMappublic class TreeMap<K,V> extends A

2020-05-15 13:58:44 2757

原创 Comparable和Comparator的知识点以及两者的区别

一. 问题背景在了解TreeMap实现原理的过程中,了解到它必须实现Comparable或Comparator。为什么要实现这个接口,两者有什么区别?看到TreeMap源码有注释写着如下:在这里插入代码片

2020-05-14 20:52:32 840

原创 LinkedHashMap常见问题LinkedHashMap实现LRU

一. 回顾前面根据源码分析了解LinkedHashMap原理(浅谈),现在对LinkedHashMap常见问题进行总结。本博客仅供自己学习完后总结参考,如有错误请指正二. 常见问题2.1 LinkedHashMap的原理是怎么样的?LinkedHashMap原理(浅谈)2.2 LinkedHashMap有哪两种有序?插入顺序和访问顺序。是根据成员变量accessOrder决定的。其访问顺序可以实现LRU。2.3 如何用LinkedHashMap实现LRU?继承LinkedHashMap或构

2020-05-13 11:40:12 409

原创 LinkedHashMap原理(浅谈)

一. 回顾前面深入了解了HashMap实现原理以及HashMap常见问题,今天简略了解LinkedHashMap原理。此笔记仅供自己学习完后复习回顾参考,还有很多待提高的地方,如有错误请指正二. LinkedHashMap打开IDEA,按两下shift搜索LinkedHashMap,打开源码,可以看到如下: * @since 1.4 */public class LinkedHashMap<K,V> extends HashMap<K,V> impl

2020-05-13 11:30:16 921

原创 HashMap常见问题

一. 问题背景上一篇HashMap源码分析大概了解了HashMap的数据结构,以及实现原理。对常见的问题作一下总结。本文仅供笔者自己参考,如有不正确地方请指正,谢谢大家。二. 常见的问题2.1 hashmap如何解决hash冲突,为什么hashmap中的链表需要转成红黑树?hashmap采用链地址法解决冲突。链表的最坏查询情况是O(n),而红黑树是一颗二叉查找树,最坏的查询情况是O(logN)。当桶的链表变长,查询性能也跟着下降。而使用红黑树,查询性能能大大提高。对于增删操作,因为红黑树不是绝对平

2020-05-12 20:19:28 3322

原创 HashMap源码分析

一. 问题背景在看Java面试题的时候看到HashMap的问题比较多,所以学习了HashMap的实现原理。使用源码分析加百度搜索博客等等综合分析。本人小白,做此笔记仅供自己参考,有不恰当的地方请指出。二. 储备知识了解以下知识有助于更好地理解HashMap的结构。如下:HashMap怎么分配数组下标?答:使用hash函数,详情下面会讲述。三. HashMap的成员变量打开idea,创...

2020-05-09 13:57:45 287

原创 红黑数R-B Tree

一. 知识储备1.1 满二叉树、完全二叉树、平衡二叉树满二叉树:除了叶子节点,每个节点都有左右子节点。如下:**完全二叉树:最下面的两层节点数小于2。且最下一层的节点都集中在该层最左边的若干位置。**如下:由上面可知,满二叉树从右边删去节点,可以得到完全二叉树。所以满二叉树是完全二叉树。反过来则不成立。平衡二叉树:是一个二叉查找树,且左右子树的高度差不大于1。有一个平衡因子,用来衡...

2020-05-05 21:19:53 188

原创 Day31——引入bootstrap资源

一. 引入资源二. 指定首页映射路径2.1 问题背景静态资源文件public有一个index.html页面,templates文件夹也有一个index.html页面,我想要首页访问的是后者的index.html而不是前者的。2.2 方法方法一:在controller方法里面指定请求路径(原理是,指定路径后,模板引擎会自动到templates文件夹下去找),如下:@RequestMap...

2020-05-03 21:18:43 278

原创 Day30——全面接管SpringMVC以及如何修改SpringBoot的默认配置

一. 回顾前面讲了Day29——SpringMVC自动配置原理,从自动配置原理总结出如何修改SpringBoot的默认配置?二. 扩展SpringMVC仅靠SpringBoot的自动配置有时可能不够用。我们需要自己定义配置。比如以前在springmvc.xml中配置视图映射。<mvc:view-controller path="/hello" view-name="success"/...

2020-05-02 21:57:07 190

原创 Day29——SpringMVC自动配置原理

一. 知识储备了解SpringBoot的SpringMVC自动配置原理可以从官方文档和源码下手。如下:我们打开SpringBoot官网,如下:下面就可以见到SpringBoot默认配置的SpringMVC1.1 ContentNegotiatingViewResolver & BeanNameViewResolver这两个的作用是自动配置了ViewResolver(视...

2020-05-02 20:20:48 383

原创 Java值传递和引用传递

一. 总结基本数据类型是值传递引用类型是引用传递包装类型是值传递

2020-05-02 09:44:40 163

原创 Comparator实现排序

一. 问题背景将Map<Integer, User>中的User中的age进行倒叙排序。二. 解决package com.atguigu;import java.util.*;public class Main { public static void main(String[] args) { HashMap<Integer, User&g...

2020-05-01 11:13:20 230

nacos自动服务注册.jpg

nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册nacos自动服务注册

2021-01-08

nacos服务注册流程调用.jpg

nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用nacos服务注册流程调用

2021-01-08

3+日志规范.doc

log日志规范l

2020-11-23

MySQL高级180402笔记 .html

MySQL高级部分,学习索引优化建模建表分布式处理,MySQL高级部分,学习索引优化建模建表分布式处理

2020-04-07

SSM整合实例——显示所有员工信息列表.zip

本博客有零基础入门MyBatis,欢迎关注本博客 本博客有零基础入门MyBatis,欢迎关注本博客 本博客有零基础入门MyBatis,欢迎关注本博客

2020-02-13

MyBatis分页插件.zip

本博客有零基础入门MyBatis,欢迎关注本博客 本博客有零基础入门MyBatis,欢迎关注本博客 本博客有零基础入门MyBatis,欢迎关注本博客

2020-02-12

MyBatis整合第三方缓存.zip

本博客有零基础入门MyBatis,有兴趣可关注

2020-02-12

MyBatis自定义映射 级联属性操作.zip

本博客有零基础入门MyBaits,欢迎关注

2020-02-11

支持主键自增的数据库获取主键值.zip

欢迎关注本博客,谢谢大家

2020-02-11

使用MyBatis实现基本的CRUD操作.zip

本博客有零基础入门MyBatis,欢迎关注 本博客有零基础入门MyBatis,欢迎关注 本博客有零基础入门MyBatis,欢迎关注

2020-02-10

MyBatis helloworld Mapper接口开发.zip

本博客有零基础入门MyBatis,欢迎关注本博客。 本博客有零基础入门MyBatis,欢迎关注本博客。 本博客有零基础入门MyBatis,欢迎关注本博客。

2020-02-10

MyBatis的helloworld(不使用Mapper接口实现MyBatis查询数据库).zip

本博客有零基础入门MyBatis,欢迎关注本博客。

2020-02-10

使用SpringMVC的文件上传功能.zip

本博客https://blog.csdn.net/qq_40634846由零基础入门Spring,有兴趣的同学可关注本博客

2020-02-08

使用SpringMVC的ModelAndView.zip

本博客https://blog.csdn.net/qq_40634846有零基础入门SpringMVC,有兴趣的朋友可关注本博客

2020-02-07

使用Springmvc创建一个HelloWorld.zip

本博客https://blog.csdn.net/qq_40634846有零基础入门Spring,有兴趣的可关注本博客。希望对大家有帮助

2020-02-02

使用XML方式配置AOP.zip

本博客https://blog.csdn.net/qq_40634846有零基础入门Spring,有兴趣可关注本博客,希望对大家有用

2020-02-01

用newProxyInstance方式和getProxyClass方式动态代理.zip

本博客https://blog.csdn.net/qq_40634846有零基础入门Spring,有兴趣的伙伴可以关注本博客。希望对大家有用

2020-01-31

使用注解自动装配需要组件扫描.zip

本博客https://blog.csdn.net/qq_40634846有零基础入门Spring,有兴趣可关注本博客。希望对大家有帮助

2020-01-30

Spring使用XML方式进行自动装配.zip

Spring使用XML方式进行自动装配本博客https://blog.csdn.net/qq_40634846有零基础入门Spring。有兴趣可关注本博客,希望对大家有用

2020-01-30

引用外部文件配置C3P0连接池.zip

引用外部属性文件配置C3P0连接池。本博客https://blog.csdn.net/qq_40634846有从零基础入门spring,有兴趣可关注本博客。希望对大家有用

2020-01-29

配置C3P0连接池.zip

使用spring管理的方式,用XML文件配置C3P0连接池。本博客https://blog.csdn.net/qq_40634846有从零基础入门的Spring,有兴趣的小伙伴可关注本博客。希望对大家有帮助

2020-01-29

FactoryBean.zip

介绍工厂Bean,欢迎关注本人博客:https://blog.csdn.net/qq_40634846,里面有循序渐进的零基础入门spring,希望对大家有帮助哈哈

2020-01-28

spring中的list、map.zip

在配置Bean对象时,有时候它的成员变量是一个list集合或者是一个map,对于list和map有另外的语法。有兴趣可关注本博客:https://blog.csdn.net/qq_40634846,有循序渐进的spring,零基础入门。

2020-01-28

字面量、空值、引用其他Bean.zip

讲述使用spring管理Bean对象,引用自定义类型的对象,本博客https://blog.csdn.net/qq_40634846有循序渐进的spring从零基础入门。希望对大家有用,有兴趣可关注本博客

2020-01-28

通过spring获取Bean.zip

零基础入门spring,通过spring获取Bean。我博客https://blog.csdn.net/qq_40634846的Spring专栏里面有循序渐进的spring文章,有兴趣可以关注本博客,希望对大家有用。

2020-01-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除