
知识点
小野兽冲鸭
这个作者很懒,什么都没留下…
展开
-
Java-集合类
本篇文章是对https://github.com/CyC2018/CS-Notes的学习目录CollectionSet1 hashset:2 treeset:3 linkedhashset:List1 Arraylist:2 Vector:3 CopyOnWriteArrayList4 LinkedList:Queue1 LinkedList:...原创 2019-06-13 15:32:12 · 162 阅读 · 0 评论 -
Threadlocal
ThreadLocal当使用ThreadLocal维护变量的时候,在多个线程访问同一个变量的时候,为每一个线程创建一个变量副本,仅在当前线程使用。这样各个线程对共享变量的操作就互不影响。可以解决多线程并发的问题。像synchornized和Rentrantlock等同步机制是以时间换空间。ThreadLocal使用以空间换时间。ThreadLocalMapThreadLocal的实...原创 2019-07-30 11:06:51 · 129 阅读 · 0 评论 -
动态代理
目录代理模式静态代理动态代理AOP中的动态代理代理模式给目标对象提供一个代理对象,并由代理对象控制对目标对象的引用。代理模式中代理对象和目标对象要实现相同的接口。优点:控制对目标对象的直接访问,可以很好的隐藏和保护目标对象。 最重要的一点是,在不改变目标方法的情况下对目标方法进行增强。静态代理静态代理就是为每一个需要代理的目标对象都创建一个代理类,...原创 2019-08-06 09:15:30 · 176 阅读 · 0 评论 -
synchronized原理
作用确保线程访问互斥的同步代码 确保共享变量的修改能及时可见 有效解决重排序问题Java中的每一个对象都可以作为锁,这是synchronized的基础。普通同步方法,锁是当前实例对象 静态同步方法,所示当前类的class对象 同步方法块,锁是括号中的对象。synchronize底层原理同步代码块和同步方法实现的原理不同同步代码块:通过添加monitorEnter和mon...原创 2019-08-06 10:11:11 · 216 阅读 · 0 评论 -
浏览器缓存
目录强缓存ExpiresCache-control协商缓存协商缓存生效返回304Not Modified状态码协商缓存失效,返回200和请求结果Last-Modified和If-Modified-SinceETag和If-None-MatchLast-Modified和Etag的对比缓存机制实际使用场景用户行为对浏览器的影响浏览器缓存:缓解服务...原创 2019-08-09 09:56:15 · 188 阅读 · 0 评论 -
HTTPS
目录HTTPS是什么HTTP的不足HTTPS的特点SSL/TLS 握手过程对称/非对称加密公私钥证书、签名、CA浏览器校验HTTPS缺点HTTPS是什么是加密超文本传输协议,在HTTP的基础上。利用SSL建立安全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份验证,同时保护交换数据的隐私与完整性。基于HTTP协议,通过SSL和TSL...原创 2019-08-09 11:21:38 · 2355 阅读 · 0 评论 -
TCP和UDP
TCP首部源端口和目的端口:各占两个字节,加上IP首部的源IP地址和目的IP地址可以唯一确定一个TCP连接。数据序号:TCP面向字节流传输,表示这个报文段中第一个数据字节序号。4字节确认序号:仅当ACK标志位为1的时候有效。确认序号代表期望收到的下一个字节的序号。4字节偏移:头部长度,4位。和IP头部一样,以4字节为单位,最大为60字节。保留位:6位,必须是06个标志位...原创 2019-08-09 16:34:20 · 323 阅读 · 0 评论 -
操作系统
目录操作系统概述操作系统运行环境与运行机制进程/线程模型第四章 处理器调度(CPU调度)第五章 同步互斥执行第六章 同步互斥机制2-进程通信机制管程进程间通信典型操作系统的IPC机制第7章 存储模型基本概念物理内存管理伙伴系统基本内存管理方案1基本内存管理方案2交换技术第8章 虚拟存储技术虚拟存储技术页表及页表项的设计...原创 2019-08-20 10:55:23 · 1087 阅读 · 0 评论 -
软件测试相关问题
软件测试理论知识基础详细解说—总结目录软件测试理论知识基础详细解说—总结软件研发流程软件测试基础软件测试原则软件测试的对象软件测试分类软件测试风险软件测试类型按照开发阶段划分按是否运行程序划分按照是否查看代码划分其它划分质量面试:杯子怎么测?1面试:杯子怎么测?2测试需求分析面试:测试拉杆箱面试:测试Web页面面试:测...原创 2019-08-12 10:56:39 · 939 阅读 · 0 评论 -
Cookie和Session
目录存储位置(安全性):存储对象及大小:有效期Http是一个无状态的协议,服务器无法辨别这一次请求和上一次请求是否来自同一个客户端。这样就会导致比如说,用户登录后,再跳转到其它页面,又要进行登录才行。cookie和session可以解决这样的问题。Cookie和session都可以保存会话数据。区别:存储位置(安全性):cookie存储在浏览器上,所以是不安全的,其...原创 2019-08-12 16:06:32 · 248 阅读 · 0 评论 -
HashMap和ConcurrentHashMap源码分析
目录HashMap1 HashMap概述2 涉及到的数据结构:处理hash冲突的链表和红黑树以及位桶3 HashMap源码分析类的继承关系类的属性构造函数hash算法重要方法分析ConcurrentHashMap重要的属性put方法Remove方法size方法HashMap1 HashMap概述在JDK1.8之前,HashM...原创 2019-07-16 10:08:37 · 1017 阅读 · 0 评论 -
Servlet
目录如何创建web项目?如何开发一个servlet程序?servlet的生命周期如何创建web项目?https://blog.youkuaiyun.com/u013393958/article/details/78329192使用Intellij IDEA新建Web项目如何开发一个servlet程序?编写java类,继承HttpServlet类 重写doGet和doPo...原创 2019-07-03 16:46:45 · 246 阅读 · 0 评论 -
Java-并发
本篇文章是对https://github.com/CyC2018/CS-Notes的学习目录1 线程状态转换2 使用线程3 基础线程机制ExecutorDaemonsleep()yield()4 中断Interrput中断Executuor中的中断操作5 互斥同步SynchronizedReentrantLock6 线程之间的协作jo...原创 2019-06-15 16:04:44 · 259 阅读 · 0 评论 -
Java-虚拟机
本篇文章是对https://github.com/CyC2018/CS-Notes的学习目录1 什么是java虚拟机?2 运行时数据区域程序计数器Java虚拟机栈本地方法栈堆元数据区直接内存3 垃圾收集回收哪些内存空间?判断一个对象是否可被回收?引用类型垃圾收集算法垃圾收集器4 内存分配与回收策略Minor GC和Full GC...原创 2019-06-17 21:03:50 · 794 阅读 · 0 评论 -
Java-IO
本篇文章是对https://github.com/CyC2018/CS-Notes的学习目录1 概览2 磁盘操作3 字节操作实现文件复制装饰者模式4 字符操作编码与解码String的编码形式Reader与Writer实现逐行输出文本文件的内容什么时候使用字节流什么时候使用字符流5 对象操作序列化Serializabletransien...原创 2019-06-18 11:10:32 · 302 阅读 · 0 评论 -
数据库-数据库系统原理
本篇文章是对https://github.com/CyC2018/CS-Notes的学习目录存储引擎1 事务概念ACID2 并发一致性问题丢失修改读脏数据不可重复度幻影读3 封锁封锁粒度封锁类型封锁协议MySQL的隐式与显示锁定4 隔离级别未提交读(READ UNCOMMITTED)提交读(READ COMMITTED)可...原创 2019-06-19 17:09:12 · 283 阅读 · 0 评论 -
数据库-SQL
本文是学习https://github.com/CyC2018/CS-Notes/blob/master/notes/SQL.md#%E4%B8%80%E5%9F%BA%E7%A1%80的笔记目录1 基础2 创建表3 修改表4 插入5 更新6 删除7 查询DISTINCTLIMIT8 排序ASC:升序(默认)DESC:降序9 过滤10 ...原创 2019-06-21 20:08:21 · 782 阅读 · 0 评论 -
MySQL性能优化1-MySQL索引机制(B+ Tree)
目录索引是谁实现的什么是索引B+ TreeMySQL B+ Tree的实现(主要InnoDB MyISAM中)MyISAMInnoDB索引知识补充列的离散性最左匹配原则联合索引覆盖索引小结索引是谁实现的存储引擎是在表上实现的,一个库中的表可以使用不同的存储引擎。索引就是由存储引擎来实现的。什么是索引正确的创建合适的索引是提升数据...原创 2019-06-24 11:35:20 · 268 阅读 · 0 评论 -
MySQL性能优化2-MySQL体系结构、存储引擎、查询机制
目录MySQL体系结构各大存储引擎存储引擎介绍CSV存储引擎archive存储引擎Memory存储引擎MyISAMInnoDB查询机制查询执行的路径mysql 客户端/服务端通信通讯方式查询状态查询缓存查询缓存的相关设置不会缓存的情况为什么mysql默认关闭了缓存开启??查询缓存使用场景查询优化处理查询优化处理的...原创 2019-06-24 16:45:55 · 1705 阅读 · 0 评论 -
MySQL性能优化3-深入InnoDB
目录事务概念ACID并发一致性问题事务四种隔离级别InooDB引擎对隔离级别的支持程度锁封锁粒度封锁类型共享锁(行锁):Shared Locks排它锁(行锁):Exclusive Locks思考:InooDB到底锁住了什么?意向共享锁、意向排它锁(表锁):自增锁:AUTO-INC Locks记录锁 (Record Locks)、间隙锁 (...原创 2019-06-25 16:24:21 · 316 阅读 · 0 评论 -
数据库-Redis
目录Windows下Redis安装教程Redis概述为什么要使用nosql(redis)Redis能做什么不能做什么?为什么使用Redis?Redis的五种基本类型及底层实现底层数据结构基本数据结构使用场景Redis和Memcached键的过期时间数据淘汰策略持久化持久化的配置AOF的配置工作原理定时任务RDB的原理AOF...原创 2019-06-27 10:25:00 · 562 阅读 · 0 评论 -
设计模式
设计模式.md目录设计模式.md创建型1 单例(Singleton)2 简单工厂(Simple Factory)3 工厂方法4 抽象工厂5 生成器6 原型模式行为型1 责任链2 命令3 解释器4 迭代器5 中介者6 备忘录7 观察者8 状态9 策略10 模板方法11 访问者12 空对象结构型1 适配器...原创 2019-06-28 15:24:54 · 165 阅读 · 0 评论 -
面向对象
https://github.com/CyC2018/CS-Notes/blob/master/notes/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E6%80%9D%E6%83%B3.md目录一、三大特性封装继承多态二、类图泛化关系实现关系聚合关系组合关系关联关系依赖关系三、设计原则S.O.L.I.D...原创 2019-06-28 16:06:24 · 172 阅读 · 0 评论 -
Socket
目录Windows下的5种IO模型1 select(选择)模型--轮询fd_set集合2 异步选择(WSAAsyncSelect)3 事件选择(WSAEventSelect)4重叠IO(Overlapped I/O)5 完成端口(Completion Port)Linux下的5种IO模型阻塞式IO非阻塞式IOIO复用信号驱动异步IO五大IO模型...原创 2019-07-03 15:12:09 · 416 阅读 · 0 评论 -
乐观锁与悲观锁
乐观锁总是假设最好的情况,每次使用数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在次期间别人有没有去更新这个数据,如果没有更新则可以进行更新操作,如果有更新可以不断的尝试(自旋)直到成功。实现方式:版本号机制,CAS算法版本号机制:在数据表中加一个版本号version字段,表示数据被修改的次数,数据每次被修改之后version+1.当线程要更新数据的时候,读取数...原创 2019-08-17 10:22:29 · 267 阅读 · 0 评论