从SLF4J说起看委派模式
将某个通用解决方案包装成成熟的工具包,是每一个技术建设工作者必须思考且必须解决的问题。本文从业内流行的既有工具包入手,解析实现思路,沉淀一般方法。为技术建设的初学者提供一些实践思路的参考。尤其是文中提倡的“去中心化”的协作模式,和“关键链路+开发接口”的开发模式,具有一定的实际落地意义。当然本文在行文中,不可避免存在一定主观偏见性,读者可酌情阅读。 前...

肖钟城
  • Java基础
  • 设计模式
大约 18 分钟
JDK 8源码编译
安装Mercurial 安装Mercurial:https://www.mercurial-scm.org/downloads (https://www.mercurial-scm.org/downloads) 以centos7安装为例: 下载rpm包: 源码下载 得到 配置编译环境 安装openjdk7 执行configure 在执行上述命令时,可以...

肖钟城
  • Java基础
  • Java实现
大约 1 分钟
Java本地高性能缓存实践
Java缓存技术可分为远端缓存和本地缓存,远端缓存常用的方案有著名的redis和memcache,而本地缓存的代表技术主要有HashMap,Guava Cache,Caffeine和Encahche。远端缓存将在后面的博文中进行深入探讨,此处挖个坑,因此本篇博文仅覆盖了本地缓存,且突出探讨高性能的本地缓存。 本篇博文将首先介绍常见的本地缓存技术,对本地...

肖钟城
  • Java基础
  • Java实现
大约 10 分钟
Java实现布隆过滤器
布隆过滤器 海量数据处理以及缓存穿透这两个场景让我认识了 布隆过滤器 ,我查阅了一些资料来了解它,但是很多现成资料并不满足我的需求,所以就决定自己总结一篇关于布隆过滤器的文章。希望通过这篇文章让更多人了解布隆过滤器,并且会实际去使用它! 下面我们将分为几个方面来介绍布隆过滤器: 什么是布隆过滤器?; 布隆过滤器的原理介绍。; 布隆过滤器使用场景。; 通...

肖钟城
  • Java基础
  • Java实现
大约 10 分钟
创建型设计模式
总览 在软件工程中,设计模式描述了软件设计中最常遇到的问题的既定解决方案。 它代表了经验丰富的软件开发人员经过长期反复试验而形成的最佳实践。 在 Erich Gamma、John Vlissides、Ralph Johnson 和 Richard Helm(也称为 Gang of Four 或 GoF)于 1994 年出版《设计模式:可重用的面向对象软...

肖钟城
  • Java基础
  • 设计模式
大约 8 分钟
工厂模式
工厂模式是一种设计模式,它允许您在不向客户端公开实例化逻辑的情况下创建对象。 它是一种将对象的实例化委托给工厂类的方法,而客户端无需决定要实例化的具体类。 让我们来看看一些术语: 客户端:需要对象的类。; 工厂:创建对象的类。; 决定参数:工厂类用来决定实例化哪个具体类的参数。; 抽象:当客户端获得一个对象时,它希望它做一些事情。它需要知道它需要哪些类...

肖钟城
  • Java基础
  • 设计模式
大约 3 分钟
结构型设计模式
总览 这篇文章中,我们主要介绍一下结构型设计模式,以及讨论结构型设计模式中代理模式、装饰者模式、适配器模式和桥接模式有哪些及其差异点。 根据 Gang Of Four (GoF)[设计模式作者]介绍,设计模式可以分为三类,分别为创建型、结构型以及行为型。简单地说,结构模式处理类和对象的组合。 它们提供了使用对象组合和继承来创建某些抽象的不同方式。 代理...

肖钟城
  • Java基础
  • 设计模式
大约 2 分钟