- 博客(18)
- 收藏
- 关注
原创 计算机网络-输入URL到页面加载过程详解
输入URL到页面加载过程详解地址栏输入URLURL即统一资源定位符,它实际上就是网站网址,浏览器就是靠URL来查找资源位置,可以把URL分割成几个部分:协议、网络地址、资源路径传输协议URL包含协议部分,是浏览器和www万维网之间的沟通方式,它会告知浏览器正确在网路上找到资源位置。最常见的网络传输协议的是HTTP协议;其他还有ftp、file、https、mailto、git等。还有自定义的协议,例如tencent,不同协议有不同的通讯内容格式网络地址指示该连接网络上哪一台计算机,
2021-08-05 20:51:55 397
原创 计算机网络-HTTP协议
HTTP协议基础概念URI、URL和URNURI包含URL和URNURI统一资源标识符URL统一资源定位符URN统一资源名称请求和响应报文请求报文请求信息头请求行请求头空白行隔开请求头和请求体请求信息体响应报文响应信息头状态行响应头空白行隔开响应头和响应体响应信息体HTTP方法客户端发送的请求报文第一行为请求行,包含了方法字段GET获取资源,当前网络请求中,绝大部分使用的是GET方法HEAD获取报
2021-08-05 20:50:31 161
原创 计算机网络-UDP协议详解
UDP协议详解UDP概述User Datagram Protocol即用户数据协议,在网络中与TCP协议一样用于处理数据包,是一种无连接的协议,在OSI模型的第四层传输层,处于IP协议的上一层,UDP用来支持那些需要在计算机之间传输数据的网络应用,包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。UDP报文没有可靠性保证、顺序保证和流量控制字段等,可靠性较差。因为UDP协议的控制选项较少,在数据传输过程中延迟小、数据传输效率高,适合对可靠性要求不高的应用程序,或者可以保障可
2021-08-03 20:47:19 1190
原创 计算机网络-TCP协议详解
TCP协议详解协议简述TCP在网络OSI的七层模型中的第四层传输层,传输的数据叫segment,IP在第三层网络层传输的数据叫packet,ARP在第二层数据链路层,传输的数据叫frame程序的数据首先会打到TCP的segment中,然后TCP的segment会打到IP的packet中,然后再打到以太网的frame中,传到对端后各个层解析自己的协议,然后将数据交给更高层的协议处理TCP头格式TCP的包是没有IP地址的,但有源端口source port和目标端口destination portse
2021-08-03 20:46:34 290
原创 计算机网络-IP协议详解
IP协议详解IP及配套协议地址解析协议ARP网际控制报文协议ICMP网际组管理协议CGMPIP数据报格式版本IPv4和IPv6首部长度区分服务总长度生存时间TTL,防止无法交付的数据报在互联网中不断兜圈子,当TTL为0时丢弃数据报协议指出携带的数据应该上交给哪个协议进行处理,如ICMP、TCP、UDP等首部校验和标识片偏移IP地址编址方式分类由两部分组成,网络号和主机号,不同分类具有不同的网络号长度,而且是固定的A类地址:8位网络号,24位主机号
2021-08-03 20:45:20 350
原创 Java-Spring事务
Spring事务什么是事务事务是逻辑上的一组操作,要么都执行,要么都不执行例子:银行转账小明给小红转账1000块,转账会涉及到两个操作,小明的余额减少1000,小红的余额增加1000,如果在这两个操作之间出现错误或者系统崩溃网络故障,导致其中一个操作失败了,如小明余额减少,但是小红的余额没有增加,这样就不对了。事务就是保证这两个操作要么都成功,要么都失败事务的特性ACIDA原子性一个事务中的所有操作,要么全部成功要么全部失败,不会结束在中间的某个环节,事务在执行的过程中如果发生错误,就会回
2021-08-03 20:42:33 169
原创 Java-Spring
SpringIoC、DI与AOPIoCIoC是一种设计思想,将原本在程序中手动创建对象的控制权,交由Spring框架来管理,IoC容器是spring用来实现IoC的载体,IoC容器实际上是个Map,存放各种对象将对象之间的相互依赖关系较给IoC容器管理,由IoC容器完成对象的注入,很大程度简化应用的开发,IoC容器就像一个工厂,当我们需要创建一个对象时,只需要配置好配置文件告诉容器需要什么类型的对象,完全不用考虑对象是如何被创建出来的一般通过XML配置文件来配置Bean,选择大部分使用注解配置
2021-08-03 20:41:00 94
原创 计算机网络-基础
计算机网络计算机网络的结构OSI的七层协议应用层表示层会话层传输层网络层路由器数据链路层交换机交换机的工作原理交换机拥有一条很高带宽的内部总线和内部交换矩阵。交换机的所有端口都挂接在这条总线上,控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC的NIC挂接在哪个端口上,通过内部交换机矩阵迅速将数据包传送到目的端口,目的MAC若不存在则广播到所有的端口,接收端口回应后交换机会“学习”新的地址,并把它添加入内部MAC地址表中。使
2021-08-03 20:39:32 108
原创 数据库-数据库基础与原理
数据库基础与原理核心组件进程管理器很多数据库具备一个需要妥善管理的进程/进程池,为了实现纳秒级操作,一些现代数据库使用自己的线程而不是操作系统线程网络管理器网络I/O是个问题,尤其是对于分布式数据库,所以一些数据库具备自己的网络管理器文件系统管理器磁盘I/O是数据库的首要瓶颈,具备一个文件系统管理器来完美处理OS文件系统甚至取代OS文件系统,是非常重要的内存管理器为了避免磁盘I/O带来的性能损失,需要大量的内存,如果需要处理大容量内存就需要高效的内存管理器安全管理器用
2021-08-03 20:38:10 151
原创 Java-多线程与并发
java多线程与并发线程状态及转换新建New线程创建后未启动可运行Runnable可能正在运行,也可能正在等待CPU时间片包含了操作系统线程状态中的running和ready阻塞Blocking等待获取一个排它锁,如果其线程释放了锁就会结束此状态无限期等待Waiting等待其他线程显式的唤醒,否则不会被分配CPU时间片进入方法调用了没有设置Timeout的wai()方法调用了没有设置Timeout的join()方法退出方法其他线程调用notify(
2021-08-03 20:33:45 80
原创 Mybatis
Mybatis接口层和数据库交互的方式使用传统MyBatis提供的api使用Mapper接口Mybaitis将配置文件中的每一个节点抽象为一个Mapper接口,而这个接口中声明的方法和节点中的<select|update|delete|insert>节点相对应,即节点id值为Mapper接口中的方法名称,parameterType值表示Mapper对应方法的入参类型,而resultMap值对应了Mapper接口表示的返回值类型或者返回结果集的元素类型按照MyBatis的配
2021-08-03 20:31:33 76
原创 Java-Springcloud
Springcloud服务发现框架Eureka服务发现服务提供者提供一些自己能够执行的服务给外界服务消费者需要使用一些别人提供的服务的“用户”服务中心服务提供者与消费者之间的桥梁,服务提供者可以将自己的服务注册到服务中心,而服务消费者可以到服务中心寻找到自己所需要的服务的服务提供者负载均衡RibbonRestTemplate是spring提供的一个访问http服务的客户端类,各个微服务之间就是通过Resttemplate远程调用eureka中已注册的服务
2021-08-02 14:29:34 122
原创 Spring中的设计模式
Spring中的设计模式工厂设计模式BeanFactory延迟注入(当需要某个bean的时候才会注入),相比于ApplicationContext来说会占用更少的空间,程序启动速度更快ApplicationContext容器启动的时候,不管有没有用到,一次性创建所有的bean。除了有beanfactory的功能还有额外更多的功能,所以使用ApplicationContext的更多ApplicationContext的三个实现类ClassPathXmlApplication,把上下
2021-08-02 14:25:30 93
原创 Java-JavaEE
JAVAEEdoGet和doPost在什么情况下调用表单标签中的method属性为get时使用doget,为post时调用dopost转发forward和重定向redirect的区别转发的服务器行为,重定向的客户端行为转发通过requestdispatcher对象的forward方法实现,可携带原来的request和response重定向利用服务器返回的状态码来实现的,客户端请求服务器的时候会返回一个状态码,服务器通过设置状态码301或302,则浏览器会到新的网址重新请求该资源两者区别从地
2021-08-02 14:22:12 144
原创 数据结构算法-排序算法
排序算法直接插入排序算法描述1、从第一个元素开始,默认首元素已排序2、取出下一元素,在已排序的元素序列中从后向前比较3、若已排序元素大于该元素,则将已排序元素与该元素交换位置或向后移动一位4、重复步骤3,直到找到已排序元素小于或者等于该元素的位置5、将该元素插入到该位置后6、重复步骤2-5代码实现public static void sort(int[] a) {for (int i = 0; i < a.length - 1; i++) {for (int j = i
2021-08-02 14:18:36 92
原创 Java-多线程
多线程创建线程的方式继承Thread类重写run方法,start()开启线程实现runnable接口重写run方法,实例化一个thread(runnable)start()开启线程使用executor框架使用futuretask防止线程死锁1、破坏请求与保持条件,一次性请求所有的资源2、破坏不剥夺条件,占用部分资源的线程进一步申请其他资源时,如果申请不到,可以主动释放它占有的资源2、破坏循环等待条件,靠按序申请资源来预防,按某一顺序申请资源,释放资源则反序释放sleep方法和
2021-08-01 13:29:40 81
原创 Java-集合框架
Java集合框架集合概述除了map结尾的类之外,其他类都实现了Collection接口,以map结尾的类都实现了Map接口List、Set、Map的区别List,元素有序,可重复ArrayList底层是object[]数组vector底层是object[]数组Linkelist底层是双向链表Set,元素无序,不可重复HashSet(无序,唯一)基于HashMap实现,底层采用HashMap存储元素LinkedHashSet是HashSet的子类,并且内部通过LinkedHa
2021-08-01 13:27:46 102
原创 Java-基础
Java基础继承访问权限修饰符不加修饰符,表示包级可见privateprotected用于修饰成员,表示在继承体系中成员对于子类可见,这个访问修饰符修饰类没有意义public抽象类与接口抽象类抽象类与抽象方法都使用abstract关键字进行声明,抽象类一般会包含抽象方法,抽象方法一定位于抽象类中抽象类不能被实例化,需要继承抽象类才能实例化其子类接口接口是抽象类的延伸,在Java8之前,可以看成一个完全抽象的类,也就是没有任何方法的实现从Java8开始
2021-08-01 13:24:31 74
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人