摘要: 工厂模式 工厂模式是我们最常用的设计模式之一,使用工厂方法替代new操作。工厂模式又分为三种,分别是简单工厂,工厂方法和抽象工厂。 简单工厂 定义一个工厂类,根据传入的参数来决定实例化哪个类: public interface Mouse { void sayHello(); } public cl 阅读全文
posted @ 2021-02-28 20:10 丁茜萌萌哒 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 前面讲了Java的spi机制,但是Java的spi并不能实现按需加载,它会加载接口的所有实现类,因此Dubbo并未使用Java的spi而是自己实现了一套SPI机制,将逻辑封装在ExtensionLoader中,实现按需加载 Dubbo spi示例 首先创建接口: @SPI // 注意需要加上该注解 阅读全文
posted @ 2021-02-20 17:28 丁茜萌萌哒 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 在讨论Dubbo spi之前 首先了解一下Java spi机制 什么是Java的spi SPI(Service Provider Interface)是一种服务发现机制。SPI的本质是将接口实现类的全限定名写在一个文件中,由加载器去加载这些接口实现类,这样可以在运行时动态将接口替换为实现类,通过SP 阅读全文
posted @ 2021-02-20 14:40 丁茜萌萌哒 阅读(27) 评论(0) 推荐(0) 编辑
摘要: Aware接口 当我们需要用到spring中的底层的一些组件的时候,我们需要自定义bean去实现对应的Aware接口来获取底层组件,如ApplicationContextAware,BeanFactoryAware,BeanNameAware,EnvironmentAware等等 实现Applica 阅读全文
posted @ 2020-12-13 15:50 丁茜萌萌哒 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 先来看看线程池的7大参数: corePoolSize,maximumPoolSize,keepAliveTime,timeUnit,blockingQueue,threadFactory,rejectedExecutionHandler 常见的几个线程池 FixedThreadPool == 创建一 阅读全文
posted @ 2020-03-22 11:04 丁茜萌萌哒 阅读(867) 评论(0) 推荐(0) 编辑
摘要: 定义的Json格式字符串: {"associationName":"书法社","associationDescribtion":"你喜欢书法吗,喜欢的话就加入我们吧。","startTime":"2019-12-05 00:00:00","name":"肥宅"} 后端定义的DTO中日期为: 1 @D 阅读全文
posted @ 2019-12-08 19:09 丁茜萌萌哒 阅读(1156) 评论(0) 推荐(0) 编辑
摘要: ReentrantLock ReentrantLock是AQS中独占模式的一种实现。内部定义了一个继承了AQS类的Syn类。该类有两个子类。而Syn类定义模板方法lock()方法给子类去实现。其中一个子类是实现公平锁,另一个是实现非公平锁。 非公平锁的实现 非公平锁的实现很简单,通过CAS操作判断s 阅读全文
posted @ 2019-10-19 18:31 丁茜萌萌哒 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 为什么需要加密,因为HTTP是明文传输,不安全。 对称加密 浏览器和服务器使用同一个密钥进行加密和解密。没有该密钥不能获取到传输的内容。看似是正确的没有错误。但是怎么保证该密钥能安全的让双方知道呢,服务器生成密钥发送给浏览器的过程中是有可能被截获该密钥的。有的人可能会想,如果浏览器一开始就有该密码就 阅读全文
posted @ 2019-10-17 16:31 丁茜萌萌哒 阅读(703) 评论(0) 推荐(0) 编辑
摘要: 在面试过程中面试官可能会问你关于锁的知识,并让你手写一个死锁的案例。下面我们来写一个简单的小Demo来实现一个死锁。 死锁案例 这段代码 显而易见会block住 来看结果 并且程序是一直运行着的状态,那么程序出了这种状况应该怎么去排查呢?对于简单的案例我们直接用jstack就可以来查看具体是哪里的问 阅读全文
posted @ 2019-10-17 13:34 丁茜萌萌哒 阅读(1262) 评论(0) 推荐(0) 编辑
摘要: 总结一下MySQL中的Buffer Pool 1. 磁盘速度非常慢,而CPU的速度非常快。所以磁盘和CPU之间加了一道Buffer Pool。将磁盘中的数据先加载到Buffer Pool中(将磁盘页加载到Buffer Poll的缓存页中),Buffer Pool是在内存空间申请的一块连续的内存空间。 阅读全文
posted @ 2019-10-17 13:29 丁茜萌萌哒 阅读(312) 评论(0) 推荐(0) 编辑