网络基础
一、OSI七层模型
1.Open System Interconnect的缩写,开放式系统互联
2.网络中的数据的传输都会经过这七层,数据包经过后六层的封装,最终通过第一层进行传输
3.数据链路层:可以在两台计算机之间传输数据包,传完后可以对数据进行简单的校验(如奇偶校验)
4.网络层:添加了路由,解决不是面对面的两台计算机之间数据的传输,数据包会先发给路由器,经过一个或多个路由转发,最后到达目标计算机,同时为了标识网络中的每个路由节点,使用了IP协议,每个路由节点都会有IP地址
5.传输层:虽然可以知道数据的完整性,但传输过程不可靠,可能中途有节点没有收到,添加数据传输的可靠性,如TCP的出错重传机制
6.应用层:数据包是为那个应用服务,如http,ftp,email等
OSI七层 | TCP/IP四层 | 对应网络协议(相对四层来分) |
---|---|---|
应用层(Application) | 应用层 | HTTP、TFTP, FTP, NFS, WAIS |
表示层(Presentation) | ↑ | Telnet, Rlogin, SNMP, Gopher |
会话层(Session) | ↑ | SMTP, DNS |
传输层(Transport) | 传输层 | TCP, UDP |
网络层(Network) | 网络层 | IP, ICMP,ARP, RARP, AKP, UUCP, OSPF,BGP,IGMP, RIP |
数据链路层(Data Link) | 数据链路层 | FDDI, Ethernet, Arpanet, PDN, SLIP, PPP,CSLIP,MTU |
物理层(Physical) | ↑ | ISO2110, IEEE 802.1A, IEEE 802.2-IEEE 802.11 |
操作系统知识拾遗
一、进程与线程
进程和线程都是一个CPU工作时间段的描述,只是关注点不同。
进程(Process):
资源(CPU,内存等,文件,网络等)分配的基本单位。系统中有很多进程,它们都会使用内存。为了确保内存不被其他进程使用,每个进程所能访问的内存都是分配好的,不能互相干扰。
线程(Thread):
CPU运行调度的基本单位,利用中央处理器去运行代码,线程必须被包含在进程中,一个进程可以有多个线程(至少有一个),这些线程有自己的资源(栈,寄存器等),其它线程可以读写这些栈内存。线程也有自己的局部存储(TLS)和当前指令指针(PC),标明下一指令执行点。
总结:进程像一个容器,里面有很多线程和资源,进程分这些资源让线程去执行。线程之间通信很容易,进程之间通信(IPC)需要借助其他介质,如消息队列,管道等。同一进程内的线程间切换比进程间的切换要快。
SpringMVC学习笔记
一、构建工程
以maven形式创建webapp项目
1.1、添加jar包依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.8.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
1.2、修改web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
<display-name>Archetype Created Web Application</display-name>
<!--springmvc-->
<servlet>
<servlet-name>spring-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<!-- 指定配置文件位置 -->
<param-value>classpath:/spring-mvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>spring-dispatcher</servlet-name>
<!-- 指定拦截的请求 -->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
Welcome
一、Welcome
If you see this page, that means you have setup your site. enjoy!