- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 IO 与 NIO :其本质就是阻塞和非阻塞的区别
阻塞概念:应用程序在获取网络数据的时候,如果网络传输数据很慢,那么程序就一直等着,知道传输完毕为止。非阻塞概念:应用程序直接可以获取到已经转备好的数据,无需等待。IO为同步阻塞形式,NIO为同步非阻塞形式、NIO并没有实现异步,在JDK1.7之后,升级了NIO库包,支持异步阻塞通信模型即NIO2.0(AIO)同步与异步:同步与异步一般是面向操作系统和应用程序对IO操作的层面上来区别
2017-12-30 20:13:51 4485 16
原创 Hash底层源码分析
Hsah:散列将一个任意长度通过某种(函数函数算法)转换成一个固定值,通过hash出来的值,通过只定位到map,key-value 基本原理。/** * Hashtable是基于Map接口的实现。这个版本的实现提供了所有map操作的实现并且允许null值和null键 * 除了允许空值(null)和不支持同步,HashMap和hashtable没有什么区别 *
2017-12-24 16:36:42 616 23
原创 JDK8堆内存划分变化
JVM中内存:堆内存、栈内存。栈内存主要用执行线程方法存放本地临时变量与线程中方法执行时候需要的引用对象地址。JVM所有的对象信息都存放在堆内存中,相比栈内存,堆内存可以所大的多,所以JVM一直通过对堆内存划分不同的功能区块实现对堆内存中对象管理。堆内存不够最常见的错误就是OOM(OutOfMemoryError),栈内存溢出最常见的错误就是StackOverflowError,程序有递归调用时候
2017-12-17 21:35:47 1743 21
原创 BeanUtils.copyProperties使用
BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。 注意:属性复制,不同jar中的方法,用法不一样。1、package org.springframewor
2017-12-10 21:42:00 4314 22
原创 项目实践学习-list!=null和list.size()>0 list.isEmpty的区别
项目中由于需要对list集合进行判空处理这就涉及到NULL和isEmpty的使用。因此在这里查了一些资料整理了一下,帮助理解。 首先先了解一下list==null,它其实是根本没有在堆内是不存在的,没有存储的地址。但是list.size()=0是已经存在地址,但是并没有存相应的元素,当元素的数量增加是,size随之变化。 null说明了没有进行初始化,此时
2017-12-03 19:31:35 14375 22
美女带你学MySQL基础视频178集
2017-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人