![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记
RunningHong
这个作者很懒,什么都没留下…
展开
-
Http报文学习笔记
Http报文报文向下游流动报文的组成部分Http报文Http是因特网的信使,报文则是信使用来装信的包裹。报文向下游流动所有的报文(请求报文、响应报文)都会向下游流动。所有的报文发送者都在接受者的上游。报文的组成部分...原创 2018-03-01 20:12:49 · 238 阅读 · 0 评论 -
设计模式学习笔记2-单例模式
1 单例模式1.1 懒汉式(线程不安全)public class Singleton { private static Singleton instance; private Sinleton() { } public static Singleton getInstance() { if(instance == null) {...原创 2018-09-17 16:05:14 · 169 阅读 · 0 评论 -
Spring的IOC和AOP的理解.md
1 Spring IOC和AOP理解1.1 Spring IOC理解(反射实现)控制反转/依赖注入IOC是遵循了软件设计理念的依赖倒转原则以及接口隔离原则,面向对象的设计就是为了而实现软件的更好的复用性和扩展性。1.1.1 接口隔离原则(面向接口编程)如果A要使用B的实例那么不要直接在A中对B进行初始化,而是在A中定义一个接口(Interface),让B去实现这个接口(Interface...原创 2018-09-19 11:36:35 · 269 阅读 · 0 评论 -
数据库学习-事务
1 事务1.1 什么是事务事务可以理解为一个独立的工作单元, 在这个独立的工作单元中, 有一组操作,放在事务(独立工作单元)中的多个操作, 要么全部执行成功, 要么全部执行失败。事务指的是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚。1.2 ACID(事务四大特性)1.2.1 原子性(Atomicity)事务被视为不可...原创 2018-09-24 15:22:35 · 306 阅读 · 1 评论 -
设计模式学习笔记3-代理模式.md
1 设计模式学习笔记3-代理模式代理的作用就是让我们关注自己的正事,其他的事情由代理商来帮我们办。举个栗子:我们要去买火车票,但是一般买火车票都需要去火车站去购买,这样大大加大了我们购票的难度,也给我们增加了很多的负担,所以这时就有代理这个概念出现了,就是我们买火车票不需要去车站了而是找一个就近的代理商,在代理商这里直接购买火车票,其余的杂事(如怎么去火车站,排队等)都交给代理来帮我们完成,这...原创 2018-09-19 16:35:19 · 188 阅读 · 0 评论 -
Http的Get请求和Post请求的区别.md
1 Http的Get请求和Post请求的区别get是从服务器获取数据,post是发送数据到服务器。get参数通过URL传递,post参数放在Request body中。所以:get比post更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。所以:get的url可以存为书签,post的url不可以存为书签。GET请求在URL中传送的参数是有长度限制的,而POST没...原创 2018-09-19 19:12:38 · 507 阅读 · 0 评论 -
Map的遍历方法.md
1 Map的遍历方法Map的遍历方法总是写了忘,忘了再记,在这再总结一波。1.1 使用entries来遍历(推荐) /** * 使用Map的内部类来遍历map */ public void mapErgodicByEntries(Map<String, String> map) { for(Map.Entry<String,...原创 2018-09-20 10:38:32 · 243 阅读 · 0 评论 -
判断素数.md
1 判断素数素数就是一个数被除数除了1和它本身就没有其他被除数了(1除外,1不是素数)1.1 常规判断素数的方法 /** * 常规判断素数的方法 * 从2遍历如果到这个数之前都不可被整除,则该数为素数 * @param num * @return */ public boolean isPrimeNum(int num) { if(num <=1) { ...原创 2018-09-20 18:43:00 · 358 阅读 · 0 评论 -
内部类知识.md
1 内部类内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的类。对于一个名为outer的外部类和其内部定义的名为inner的内部类。编译完成后出现outer.class和outer$inner.class两类。所以内部类的成员变量/方法名可以和外部类的相同。1.1 成员内部类成员内部类是外部类的成员,可以直接使用外部类的成员和方法,即使是private。外部类要访问内部类的所有成员...原创 2018-09-21 10:43:45 · 199 阅读 · 0 评论 -
抽象类和接口
1 抽象类和接口1.1 抽象类1.1.1 抽象方法首先说到抽象类那么我们来说说抽象方法,抽象方法是一种特殊的方法,它只有声明,没有具体的实现:abstract void fun();抽象方法必须用abstract字进行声明;如果有一个类有抽象方法,那么这个类就是抽象类。因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对象。(不能new)抽象类中也可以不声明一个抽象方法。1....原创 2018-09-21 11:47:08 · 176 阅读 · 0 评论 -
数据库学习-范式.md
1 数据库的范式范式:符合是一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度。通俗点讲就是一张数据表的表结构所符合的某种设计标准的级别。目前数据库的范式共有6中,即第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)、第五范式(5NF)。第二范式是在第一范式的基础上,第三范式是在第二范式的基础上,依次递推。1.1...原创 2018-09-21 19:57:05 · 406 阅读 · 0 评论 -
Java异常处理
文章目录异常处理1 异常处理的优势2 异常类型2.1 系统错误(Error)2.2 异常(Exception)2.3 运行时异常(RuntimeException)3 免检异常和必检异常异常处理1 异常处理的优势异常处理最根本的优势是将检测错误(由被调用的方法完成)从处理错误(由调用方法完成)中分离出来。2 异常类型Throwable类是所有异常类的根。所有的Java异常类都直接或间接地...原创 2018-10-04 22:37:55 · 255 阅读 · 0 评论 -
银行家算法(战争举例、便于理解)
1 银行家算法操作系统的进程可以动态地申请资源,但系统在进行资源分配之前,应先计算此次资源分配的安全性。(若此次分配为安全的,操作系统则将资源分配给进程,否则令进程等待)避免死锁的实质在于:系统在进行资源分配时,如何使系统不进入不安全状态。1.1 举例理解战争举例:大将军(操作系统)有一个部队(代分配的资源),当然部队中有各种兵种(弓箭手、骑兵等,每个兵种就能完成特定的战争)人有若干(人...原创 2018-09-22 11:52:19 · 1518 阅读 · 0 评论 -
浏览器输入URL全过程.md
文章目录浏览器输入URL全过程1 DNS域名解析2 建立TCP链接3 发送HTTP请求4 服务器处理请求5 返回响应结果6 关闭TCP连接7 浏览器解析渲染页面浏览器输入URL全过程1 DNS域名解析当我们在浏览器输入如同www.baidu.com的时候,其实这些网站的名字都是为了简化人们的记忆来命名的,计算机其实并不认识个东西,浏览器只认识IP地址,所以当输入域名地址时,浏览器首先去本地h...原创 2018-10-05 21:38:10 · 1312 阅读 · 0 评论 -
Java 二叉树的遍历方式(前序、中序、后序的递归与非递归,广度遍历)
示例树(下面的所有代码都基于此树型结构) 先序遍历所谓的先序遍历指的就是先遍历根节点再遍历左节点最后遍历右节点。 用先序遍历遍历示例树过程 1.ABC 2.ABDC 3.ABDCE...原创 2018-09-06 17:16:00 · 217 阅读 · 0 评论 -
java堆和栈学习笔记
在java中栈是用来存储函数的主体和变量名的,java的代码是在函数体中执行的,函数主体会放在栈内存中。栈运行是先进后出的,如栈最底层的函数是main,其上是自己编写的一系列函数,运行时是先运行自己编写的函数再运行main函数(入栈出栈的顺序)...原创 2018-03-04 10:48:17 · 210 阅读 · 0 评论 -
java多线程学习笔记
线程简介多线程编程继承Thread类实现多线程线程简介线程是指在进程基础上的进一步划分,想成是比进程更小的单位。线程启动的所占用的资源更少,进程比线程慢。java是一个多线程的语言,其指向的性能更快。多线程编程如果要实现多线程的主类,有两类途径: 1.继承一个Thread类; 2.【推荐】实现Runable、Callable接口。继承Thread类实现多线程原创 2018-03-12 20:55:29 · 213 阅读 · 0 评论 -
Linux(知识点、常见指令、文件传输、JDK下载及安装)
知识点常见指令文件传输JDK下载及安装原创 2018-02-28 10:59:37 · 283 阅读 · 0 评论 -
java中静态方法为什么不能调用非静态方法或者变量
静态方法只能调用静态方法(或者变量),非静态方法可以调用静态方法(或者变量)类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问(类名.方法|类名.变量);非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。在一个类的静态成员中去访问其非静态成员之所以会出错是因为在类的非静态成员不存在的时候类转载 2018-03-13 16:36:13 · 8024 阅读 · 0 评论 -
Kubernetes学习笔记
Kubernetes介绍 Kubernetes是容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。 Kubernetes可以在物理或虚拟机的Kubernetes集群上运行容器化应用,Kubernetes能提供一个以“容器为中心的基础架构”容器的优势 容器占用资源少、部署快,每个应用可以被打包成一个容器镜像,每个应用与容器间成一对一关系也使容器有更大优势,使用容...原创 2018-03-06 16:09:04 · 284 阅读 · 0 评论 -
设计模式学习笔记-面向对象设计原则
面向对象设计原则原创 2018-03-20 17:19:51 · 233 阅读 · 0 评论 -
利用Eclipse画类图(AmaterasUML 插件)
1 下载插件插件地址:http://jaist.dl.sourceforge.jp/amateras/56447/AmaterasUML_1.3.4.zip 2 将解压了的文件(全部文件)放于eclipse\plugins目录下3 重启Eclipse4 使用方法File -> new -> other -> 搜索class diagram -> 点击next -> 打开创建了的文件 -> 将各个类拖原创 2018-04-13 15:54:41 · 7486 阅读 · 0 评论 -
JVM学习笔记1-运行时数据区域
本文摘自《深入理解Java虚拟机》第二版1 运行时数据区域 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。 如:方法区、虚拟机栈、本地方法栈、堆、程序计数器。1.1 程序计数器(线程私有) 程序计数器可以看做当前线程所执行字节码的行号指示器。在虚拟机的概念模型中,字节码指示器就是通过改变这个计数器的值来选取下一条...原创 2018-08-28 17:06:05 · 148 阅读 · 0 评论 -
JVM学习笔记4-垃圾回收之垃圾回收算法
摘自《深入理解Java虚拟机》第二版1 垃圾回收算法1.1 标记-清除算法算法分为两个阶段,标记和清除,首先标记出所有需要回收的对象,在标记完成后统一收回所有被标记的对象。该算法主要有连个不足:第一就是标记和清除的效率都不高;第二就是空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需要分配较大对象时,无法找到足够的连续内存而不得不...原创 2018-09-04 15:00:04 · 235 阅读 · 0 评论 -
JVM学习笔记5-虚拟机类加载机制
摘自《深入理解Java虚拟机》第二版虚拟机类加载机制Java从代码到最终执行,一般需要两个过程:编译运行编译:把Java文件通过javac命令变异成字节码,也就是.class文件。运行:把编译好的.class文件交给JVM运行。这里说的类加载过程指的是JVM把.class文件中类信息加载进内存,并进行解析生成对应的class对象的过程。1 类加载过程类...原创 2018-09-07 22:00:01 · 212 阅读 · 0 评论 -
JVM学习笔记2-HotSpot对象探秘
摘自《深入理解Java虚拟机》第二版1 HotSpot虚拟机对象探秘1.1 对象的创建1.1.1 类加载检查虚拟机遇到一条new指令时,首相去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。如果没有则必须先进行相应类的类加载过程。1.1.2 新生对象分配内存(分配方法:指针碰撞、空闲列表) 在类...原创 2018-09-02 17:19:45 · 195 阅读 · 0 评论 -
JVM学习笔记3-垃圾回收之对象的死活
摘自《深入理解Java虚拟机》第二版1 对象的死活1.1 引用计数算法引用计数法算:给对象添加一个引用计数器,每当一个地方引用它是,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的对象就是不可能再被使用的。但在主流的Java虚拟机中并没有选择引用计数算法来管理内存,其中最主要的原因是它很难解决对象间相互循环引用的问题,比如:在对象A和对象B中都有字段ins...原创 2018-09-03 10:55:42 · 148 阅读 · 0 评论 -
Hibernate缓存机制
1 Hibernate缓存机制1.1 why(为什么用Hibernate缓存)首先为什么要用缓存,我们都知道Hibernate是一个持久层框架,我们利用Hibernate来访问数据库,每次访问数据都会花费时间,这时为了降低访问的次数,我们就利用了缓存来提高应用程序的运行性能。缓存中的是数据是对数据源中的数据的一个复制,应用程序访问数据时先读缓存,如果缓存中没有得到想要的的数据,再从...原创 2018-09-15 19:13:02 · 160 阅读 · 0 评论 -
TCP三次握手和四次挥手.md
文章目录TCP三次握手和四次挥手1 三次握手1.1 基础知识1.2 三次握手过程1.3 现实场景2 四次挥手2.1 基础知识2.2 四次挥手过程2.3 现实场景TCP三次握手和四次挥手1 三次握手1.1 基础知识SYN(SYNchronization):同步序号,用来建立连接。SYN标志位和ACK标志位搭配使用,当SYN=1,ACK=0,表示连接请求;当SYN=1,ACK=1,表示连接...原创 2018-10-05 21:57:17 · 676 阅读 · 0 评论