Liusy01

87 篇文章
7.5K 次阅读
15 人订阅

全部文章

Liusy

【设计模式-装饰者模式】

【导读】在很多场景中,已有核心组件,此时需要对组件的功能进行扩展,此时就需要用到装饰者模式,例如建房子,核心组件就类似于房屋的架构,想要进行装修,就得聘请装修团...

8210
Liusy

【设计模式-门面模式】

学校的学生信息相关系统大家都用过,比如门户网、教务系统、图书管理系统等,一般需要用到某个系统,需要单独去登录,比如同时想去门户网和教务系统查询信息,需要在两个网...

8630
Liusy

【设计模式-原型模式】

有些场景中,存在大量相同或相似对象的创建问题,如果用传统的构造函数来创建对象,会比较复杂且耗时耗资源,用原型模式生成对象就很高效。

7340
Liusy

【设计模式-单例模式】

今天来说一下同样属于创建型模式的单例模式,相信这个模式普遍都清楚,因为平时在编码的时候都会进行相应的使用,我这边就当做日志记录一下。免得以后忘了还得去搜,我发现...

8210
Liusy

【设计模式-建造者模式】

将一个复杂对象分解成多个相对简单的部分,然后根据不同需要分别创建它们,最后构建成该复杂对象。

6420
Liusy

【设计模式-工厂相关模式】

定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类,工厂方法让类的实例化推迟到子类中进行。

6520
Liusy

CyclicBarrier用法及解析

上一篇聊了一下Semaphore信号灯的用法及源码,这一篇来聊一下CyclicBarrier的用法及解析。

9320
Liusy

Semaphore用法及解析

我记得考科目一的时候有一个大教室,这个教室只能同时允许两百人考试,当有一个考完之后,下一个才能进去进行考试。门口会有安检人员进行安检,这个Semaphore就相...

9210
Liusy

CountDownLatch解析

CountDownLatch是JUC包下的一个工具类,允许一个或多个线程等待,直到其他线程中执行的一个放行操作完后,等待线程才会继续往下执行的同步辅助。

9310
Liusy

Java锁机制

上一篇简略说了一下Synchronized和Lock,今天就来说一下Java的锁机制。

9420
Liusy

锁:Sychronized、Lock

锁是用来在多线程并发阶段保障数据同步的重要手段,防止出现脏数据,加锁代码在某个时间点只能由一个线程运行,其他线程等待。

7530
Liusy

Map源码解析

环境是java8,上述hashMap和ConcurrentHashMap在java7的时候实现会有不同。

6610
Liusy

List源码解析

开始看一下集合Collection,List是Collection的一个子接口,其是很常用的,主要是看一下其下的几个类。

9110
Liusy

JDK动态代理详解

JDK动态代理是代理模式的一种,且只能代理接口。spring也有动态代理,成为CGLib,现在主要来看一下JDK动态代理是如何实现的?

8220
Liusy

Elasticsearch的R在这里,查询与聚合

term是用于精确匹配的,类似于sql语句中的“=”,因为“name”字段用的是standard默认分词器,其会将“张三”分成“张”和“三”,并不会匹配姓名为“...

10530
Liusy

Elasticsearch的CRU

近端时间在搬砖过程中对es进行了操作,但是对es查询文档不熟悉,所以这两周都在研究es,简略看了《Elasticsearch权威指南》,摸摸鱼又是一天。

8410
Liusy

类加载器ClassLoader

上篇文章说到,Class类可以通过一个类的全限定名去加载类,那么底层是如何去加载的呢?这就是我们今天要聊的类加载器ClassLoader,其可以通过一个类的全限...

7120
Liusy

从Class源码看反射

日常敲码中,如果想要在程序运行阶段访问某个类的所有信息,并支持修改类的状态或者行为的话,肯定会用到反射,而反射靠的就是Class类。Java的动态代理也用到了这...

7820
Liusy

Thread、ThreadLocal源码解析

(1)首先看一下线程的构造方法,之后会说每种参数的用法,而所有的构造函数都会指向init方法

9410
Liusy

Redis持久化方式

众所周知,redis是内存数据库,在运行期间会将所有数据加载到内存中,所以如果不把数据落到磁盘的话,redis进程一旦被停掉,数据就会全部丢失。

7720

扫码关注云+社区

领取腾讯云代金券