摘要:垃圾回收的过程分为两步: 1.判断对象是否死亡 (1)引用计数器法: ①每当有一个对象引用是,计数器加一,当计数器为0是对象死亡 ②缺点:无法解决循环引用的问题,假设A引用B,B引用A,那么这两个对象将不会被回收,造成内存泄漏 (2)可达性算法分析 ①通过一系列可作为GC Roots的节点为起始点, 阅读全文
posted @ 2019-04-22 20:14 学习使我快乐。 阅读 (116) 评论 (0) 编辑
摘要:1.Serial收集器(新生代) (1)单线程收集器 (2)采用复制算法,用于新生代垃圾回收 (3)垃圾回收期间需要STW(Stop The World),STW表示垃圾回收线程不与用户线程并发执行 2.Serial Old收集器(老年代) (1)与Serial相似 (2)采用标记整理算法,用于老年 阅读全文
posted @ 2019-04-22 19:54 学习使我快乐。 阅读 (29) 评论 (0) 编辑
摘要:1.类的加载过程:加载-验证-准备-解析-初始化 2.加载阶段(加载阶段主要做三件事情): (1).通过类的全限名来获取此类的二进制流。 (2).将这个字节流所代表的的今天存储结构转化为方法区中可运行的数据结构。 (3).在内存中生成一个代表这个类的java.lang.Class对象,作为方法区中这 阅读全文
posted @ 2019-04-22 17:09 学习使我快乐。 阅读 (31) 评论 (0) 编辑
摘要:1.饿汉模式 饿汉模式是线程安全的,因为 private static Singleton1 singleton1 = new Singleton1(); 语句是在类加载时完成的,具体是在类加载的初始化阶段时的<client>方法中进行的。 2.懒汉模式 这种懒汉模式是线程安全的,在这里只有获取到C 阅读全文
posted @ 2019-04-22 16:16 学习使我快乐。 阅读 (16) 评论 (0) 编辑
摘要:1.事务:是指一组不可分割的逻辑单位,由ACID四大属性来描述 (1)原子性:是指一组sql要么全做完commit,要不就rowBack。 (2)一致性:是指事务要从一个一致性状态变为另一个一致性行状态,这里的一致性是指数据完整性和业务逻辑的一致性。 (3)持久性:是指一旦事务提交后对数据库的改变是 阅读全文
posted @ 2019-04-21 17:31 学习使我快乐。 阅读 (18) 评论 (0) 编辑
摘要:1.监视器 (1)首先监视器是观察者模式的实现,在我之前的博客中有关于监视器模式的解释。监视器相当于观察者 (2)我们在springMvc中最常见的监视器 ContextLoaderlistener (3)我们来看看ContextLiaderListener(当某件事情发生后,调用这个方法来初始化s 阅读全文
posted @ 2019-04-21 10:35 学习使我快乐。 阅读 (81) 评论 (0) 编辑
摘要:1.在springMvc中负责处理请求的类为DispatcherServlet,这个类与我们传统的Servlet是一样的。我们来看看它的继承图 2. 我们发现DispatcherServlet也继承了HttpServlet,所以DispatcherServlet在处理请求时也会从service()方 阅读全文
posted @ 2019-04-21 10:04 学习使我快乐。 阅读 (111) 评论 (0) 编辑
摘要:1.观察者模式 观察者这模式定义了对象之间一对多依赖,这样一来,当一个对象的改变时,它的所有依赖者都会受到通知并自动更新。 2.举个例子:小明快要高考了,小明的妈妈和爸爸监控着家里的电脑,一旦有人使用就会收到通知。这时小明的爸爸妈妈就为观察者(Observer),而电脑是否被使用就是一个主题(Sub 阅读全文
posted @ 2019-04-20 22:03 学习使我快乐。 阅读 (36) 评论 (0) 编辑
摘要:1.之前的博客中说过Mybatis中的二级缓存(CachingExecutor为装饰器模式的实现),现在就来说一下装饰器模式。 2.装饰器模式的作用: 动态的为一个对象添加新的功能,以往我们要增加功能要不修改源代码,要不就是生成自类,非常不灵活。就添加一个功能而言使用装饰器模式更加方便。 (1).比 阅读全文
posted @ 2019-04-20 20:53 学习使我快乐。 阅读 (35) 评论 (0) 编辑
摘要:相关代码 https://github.com/LiWangCai/blogRelated 可自行获取 阅读全文
posted @ 2019-04-20 17:04 学习使我快乐。 阅读 (174) 评论 (0) 编辑