- 博客(12)
- 收藏
- 关注
原创 c3p0连接池重新连接
dataSource.setJdbcUrl(jdbcUrl)dataSource.setUser(user)dataSource.setPassword(password)dataSource.setMinPoolSize(1)dataSource.setMaxPoolSize(6000)dataSource.setAcquireIncrement(5)dataSource.setAcquireRetryAttempts(3) // pool请求取连接失败后重试的次数和重试的频率dataSo.
2021-11-01 10:57:58
432
原创 java中的HashMap为什么需要hashcode函数(原理分析)
触发我这次总结的原因在xxx的一次面试中,面试官的第一道题目就是手写一个HashMap的,因为之前也看过类似的分析,大概知道HashMap的实现原理,但是实际手写一个的时候发现并不是那么容易。Hash散列算法的原理Hash散列思想的出现在《数据结构》中专门有一章节介绍了查找的算法,主要有:顺序查找、折半查找、AVL树查找……,但是这些查找都需要对原来数据结构中的元素进行遍历(无非是在算法上记性了改进,减少了遍历的次数而已)。后来有人提出能不能建立一种被查找的值与存储位置的映射关系,然后直
2020-11-21 19:41:53
741
原创 2020-11-15
leetcode标题求二进制中1的个数x&(x-1)汉明距离链表反转可以考虑利用冒泡法循环交换反转定义两个指针,分别指向前一个和后一个节点,然后递归从最后开始反转直到第一个
2020-11-15 19:29:50
136
原创 java线程池中的Worker解析
java线程池中的Worker解析上一篇说到java线程池中添加真实的线程都是在Worker对象中完成的。今天看下Worker中是如何进行线程管理的。上一篇说道coresize和maxsize两个池子的大小后,线程池会更具情况添加线程。添加线程主要依赖方法addWorker(Runable command)方法,本篇将对addWorker方法进行详细分析。java.util.concu...
2019-12-20 23:30:14
2127
原创 java线程池JVM源码解析
java线程池JVM源码解析概述对于java的线程池,刚开始接触的时候可能就知道使用Executors.newFix……之类的方法,java线程池有三种;固定大小的无限伸展的单个的single还有就是大于核心池子怎么样。其实际上这个三个池子都是基于java提供的最基本的 ThreadPoolExecutor 进行开发的,只是传递了不同的参数而已。线程池出现的背景...
2019-12-18 23:14:49
332
原创 java的“堆”内存模型
java的堆内存模型这里只说下java的堆内存模型,以及GC的分代收集的原因(为什么不直接使用某一种收集方法,比如复制算法同事GC yong和old)java堆内存模型对于初学java的人来说,对于对的理解就是,堆里面存放对象,数组。但是有没有想过真正的对象到底是个什么样子,对象里面到底是啥,为了解答这个问题,先来看下java当中堆的内存模型。 ...
2019-12-05 00:49:37
609
原创 java类加载与class解密
java类加载机制程序编译这里要从c语言开始举个例子,我们最开始接触的c语言为什么能够执行呢?首先c语言的运行需要一下的几个步骤编译---->汇编---->链接三个步骤。这三个步骤主要完成的工作就是将c语言这种人可以解读的字符串转变为机器能够执行的010101的指令码(关于指令码的执行步骤后面介绍)https://blog.youkuaiyun.com/u014376961/a...
2019-11-29 23:28:37
307
原创 JVM总结
20191124java与c++windows下的java与c++程序如何通过JRE的java(%SystemRoot%\system32下的java)执行java程序的,最终主要是将java的程序通过server下的jvm.dll(c++实现的)的window下的MFC微软基础类库最终将代码运行在windowns环境下的,这是java程序能够再windowns下运行的条件。因为j...
2019-11-24 23:35:18
210
原创 java中的类加载过程.md
加载阶段类加载包括:加载、验证、准备、解析、初始化这五个小过程加载:这个阶段JVM主要完成三件事:通过一个类的全限定名来获取定义此类的二进制字节流(读取) 将这个字节流所代表的的静态存储结构转化为方法区运行时数据结构(类信息) 在内存中生成一个代表这个类的java.lang.class对象,然后就可以根据这个内存中的class对象类创建类的实例。链接阶段验证:这一阶段的目的...
2016-11-02 12:13:15
360
原创 java中一个类从生到死.md
0 首先来看一段代码package edu.zxp.main;public class ExtendsSorts { public static void main(String[] args) { System.out.println("先运行main方法"); Zi zi = new Zi(); }}class Fu{ pub
2016-11-02 11:55:39
438
原创 java中一个类从生到死
0 首先来看一段代码package edu.zxp.main;public class ExtendsSorts { public static void main(String[] args) { System.out.println("先运行main方法"); Zi zi = new Zi(); }}class Fu{ public s
2016-11-02 11:51:00
341
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人