Spring 补充回顾

Spring 补充回顾

Spring 框架的主要模块核心容器:基本的Spring模块,提供 spring 框架的基础功能,BeanFactory 是 任何以 spring 为基础的应用的核心。Spring 框架建立在此模块之上,它使 Spring 成为一个容器。BeanFactory 是工厂模式的一个实现,提供了控制反转功能,最常用的是 XmlBeanFactory。AOP 模块:AOP 模块用于发给我们的 Spring 应用做面向切面的开发,即在现有的 Spring 应用上进行面向切面开发。JDBC 模块和 ORM 模块:JDBC:保证数据库代码的简洁,在各种不同的数据库的错误信息之上,提供了一个统一的异常访...

面试 2019-03-29 PM 15℃ 0条
MySQL数据库总结

MySQL数据库总结

MySQL数据库范式设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)就行了。第一范式(1NF):第一范式就是无重复的域,即在关系模型中,对域添加的一个规范要求,所...

数据库 2019-03-22 PM 14℃ 0条
集合框架总结

集合框架总结

源码分析导航ArrayList:https://blog.csdn.net/MOKEXFDGH/article/details/88575150LinkedList:https://blog.csdn.net/MOKEXFDGH/article/details/88615783HashMap:https://blog.csdn.net/MOKEXFDGH/article/details/88628558ConcurrentHashMap:https://blog.csdn.net/MOKEXFDGH/article/details/88660349@[toc]List, Set, Map...

默认分类 2019-03-20 PM 12℃ 0条
ConcurrentHashMap源码分析

ConcurrentHashMap源码分析

ConcurrentHashMap简介HashMap: 线程不安全,在并发环境下,扩容时可能会形成环形链表(1.8之前),导致在 get 操作时,cpu空转。HashTable: 相比 HashMap 不允许 key 和 value 为空,且是线程安全的。但所有的 get、put 方法都加上了 synchronized 锁,相当于给整个哈希表加了一把大锁,当一个线程访问时,其它线程只能等待,耗时太大。ConcurrentHashMap: 采用分段锁策略。多个线程访问不同的分段时,不存在锁竞争;只有同一分段操作才需要考虑线程同步问题。源码分析属性 transient vola...

默认分类 2019-03-19 PM 14℃ 0条
HashMap源码分析

HashMap源码分析

HashMap简介基于哈希表的 Map 接口实现,用于存放键值对JDK1.8之前由数组(主体)、链表(解决哈希冲突)组成,而1.8之后当链表长度大于8时,会将链表转为红黑树,以减少搜索时间。红黑树详解:地址底层数据结构JDK 1.8 之前底层数据结构:数据+链表(链表散列)键值对存放过程:key 的 hashCode 经过扰动函数处理过后得到 hash 值然后 (n-1) & hash 判断当前元素存放的位置(n为数组长度)判断当前位置是否存在元素,即判断 hash 值与 key 是否相同相同则直接覆盖,不同则通过拉链法解决哈希冲突扰动函数:其实就是 HashMap 内部的 hash 方...

默认分类 2019-03-18 PM 11℃ 0条
LinkedList源码分析

LinkedList源码分析

@[toc]LinkedList简介是实现了 List 接口和 Deque 接口的双端链表底层使用链表结构使其能高效的进行插入和删除操作不是线程安全的,如果想使其变为线程安全的,可以使用 Collections 中的 synchronizedList 方法: List list = Collections.synchronizedList(new LinkedList());源码解析内部私有节点类 private static class Node<E> { E item;//节点值 Node<...

默认分类 2019-03-17 PM 11℃ 0条
ArrayList源码分析

ArrayList源码分析

ArrayList 简介ArrayList 的底层是数组队列(动态数组),其容量能动态增长。继承了 AbstractList,实现了List,具备了相应的增删改查等操作。实现了 RandomAcces 接口,使得该集合支持随机访问。实现 Cloneable 接口,覆盖了 clone(),能被克隆。实现了 Serializable 接口,支持序列化。ArrayList 不是线程安全的,多线程可以使用 Vector。源码解析继承实现 public class ArrayList<E> extends AbstractList<E> ...

默认分类 2019-03-15 PM 14℃ 0条
计算机网络总结

计算机网络总结

参考:地址思维导图:地址五层协议体系结构五层协议体系结构:应用层、运输层、网络层、数据链路层、物理层。自上而下,介绍其结构中各层的作用。应用层应用层的作用通过应用进程间的交互完成特定网络应用。主要协议用于制定应用进程间的通信和交互的规则,如 HTTP协议、域名系统DNS、SMTP邮件协议等HTTP:超文本传输协议详见:https://blog.csdn.net/MOKEXFDGH/article/details/88407618DNS:域名系统一个可以将域名和IP地址相互映射的分布式数据库,使我们能通过域名访问互联网,而不用记住复杂的IP数串。运输层运输层的作用负责向两台主机进程之间的通...

计算机网络 2019-03-14 PM 11℃ 0条
算法总结之位运算

算法总结之位运算

@[toc]布隆过滤器Bloom Filter用途: 判断一个元素是否在一个集合中、黑名单过滤器;原理: 位数组与Hash方法的联合使用。是一个包含m位的位数组,每位初始化为0,有k个不同的hash函数,可将集合元素映射到位数组的某一位。插入元素需根据k个hash函数得到k个位,置为1。查询时判断这k个位(有0则该元素肯定不在集合中,都为1则该元素有可能在集合中)优缺点优点: 有良好的空间效率和时间效率,插入、查询O(n),安全性高(不保存元素本身)缺点: 正确率低,有可能不在集合中的元素在位数组查询的位得到都为1。交换请编写一个算法,不用任何额外变量交换两个整数的值。给定一个数组num...

数据结构与算法 2019-03-14 PM 14℃ 0条