2018年5月17日

RateLimiter源码

摘要: ```java /* * Copyright (C) 2012 The Guava Authors * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except * in compliance with the License. You may obt... 阅读全文

posted @ 2018-05-17 23:46 HuMingChuan 阅读(393) 评论(0) 推荐(0) 编辑

2018年2月12日

使用ASM字节码框架实现动态代理

摘要: 想了解JDK动态代理和CGLIB的实现原理和细节的同学,看过来, 本文将向你们展示如何从零开始构建构建一个动态代理对象。 ASM字节码操纵框架,可以直接以二进制的形式来来修改已经存在的类或者创建新的类。ASM封装了操作字节码的大部分细节,并提供了非常方便的接口来对字节码进行操作。ASM框架是全功能的 阅读全文

posted @ 2018-02-12 14:56 HuMingChuan 阅读(1393) 评论(0) 推荐(0) 编辑

2017年6月8日

Java流机制学习

摘要: 基本概念 BaseStream 基础流是一个可行并行或者串行的汇聚操作的元素序列。可以进行顺序遍历,也可以进行并发遍历。通过它也可以得到一个并行流或者串行流。 Stream 是Java中流的表现接口,Stream继承自BaseStream,并在BaseStream的基础上增加了fiter、map、d 阅读全文

posted @ 2017-06-08 16:31 HuMingChuan 阅读(429) 评论(0) 推荐(0) 编辑

2017年6月6日

Java8 Stream 学习总结

摘要: 暂无 阅读全文

posted @ 2017-06-06 11:28 HuMingChuan 阅读(107) 评论(0) 推荐(0) 编辑

2017年1月19日

XML实体解析器的作用

摘要: XML实体解析器的作用 什么是实体解析器 如果一个sax解析器需要实现对外部实体的自定义处理,那么必须实现一个EntityResolver接口并且注册到SAX驱动上。 从这段文字可以看出来,实体解析器是一个用户自定义的实现,并且注册到sax解析器上即可。 什么情况下需要使用 解析xml文件时,如果声 阅读全文

posted @ 2017-01-19 23:15 HuMingChuan 阅读(777) 评论(0) 推荐(0) 编辑

2016年11月9日

DefaultResouceLoader的设计

摘要: 它是什么 DefaultResourceLoader是Spring中的ResourceLoader的默认实现类,也是AbstractApplicationContext的父类,它也可以单独使用,用来从一个特定的位置来加载资源。 如何支持不同的路径加载 由于路径描述符的格式是多样的,比如URL的路径一 阅读全文

posted @ 2016-11-09 12:09 HuMingChuan 阅读(300) 评论(0) 推荐(0) 编辑

2016年11月6日

RSA 非对称加密 数字签名 数字证书

摘要: 什么是RSA加密算法 RSA加密算法是一种非对称加密算法,算法的数学基础是极大数分解难题。 RSA加密算法的强度也就是极大数分解的难度,目前700多位(二进制)的数字已经可以破解,1024位认为是比较安全的,2048则是非常安全的。 在RSA加密算法中,密钥由两部分组成,称之为公钥和私钥,私有由发送 阅读全文

posted @ 2016-11-06 21:11 HuMingChuan 阅读(1230) 评论(0) 推荐(0) 编辑

JDK动态代理

摘要: 什么是代理 所谓代理,是指对一个对象A的方法调用会被对象B先截获,然后由B来决定是继续调用A的方法或者做其他操作。也就是说,在代码中,我们直接操作的对象从A变成了B,对A的任何操作都要经过B才能完成。那么就可以说,B是A的代理 如何实现一个代理 要实现一个代理是非常简单的,只需要将代理对象B设置为目 阅读全文

posted @ 2016-11-06 13:28 HuMingChuan 阅读(359) 评论(0) 推荐(0) 编辑

2016年7月11日

年中总结

摘要: 年中总结 人生就想一场在原始森林中的穿越。向前,看不清未来通向何方;回首,找不到自己走过的路。 时光匆匆,转眼已是半年过去,距离从武汉转到南京,也已经接近一年了。 这是非常重要的一年,甚至比它之前的三年都更加重要。这半年我完成了职业技能转型,也确立了以后努力的方向,更重要的是,我建立了一个新的人生目 阅读全文

posted @ 2016-07-11 23:01 HuMingChuan 阅读(176) 评论(0) 推荐(0) 编辑

2016年4月24日

双重检查锁定和延迟初始化

摘要: 双重检查锁定的由来 在Java程序中,有时需要推迟一些高开销的对象的初始化操作,并且只有在真正使用到这个对象的时候,才进行初始化,此时,就需要延迟初始化技术。 延迟初始化的正确实现是需要一些技巧的,否则容易出现问题,下面一一介绍。 方案1 public class UnsafeLazyInit{ p 阅读全文

posted @ 2016-04-24 10:30 HuMingChuan 阅读(639) 评论(0) 推荐(1) 编辑

导航