网络编程
网络体系 7层结构
每层对应的协议
应用层:FTP,NFC,TEIP,WAIS
表示层:telnet
会话层:SMIP,DNS
传输层:TCP,UDP
网络层:IP,ICMP,ARP,UUCP
通信要素
ip地址 用来表示网络中的设备,windows中查看ip地址的命令是ipconfig,Linux中查看ip地址的命令是ifconfig
端口号 用于标识进程的地址,进程的标识,端口号1024之前,分配给系统使用,不介意自己使用
http 80端口号 https 443端口号 mysql 3306端口号
传输协议 通信的规则 常见的协议:TCP,UDP
网络编程常用类
InetAddress
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Demo01 {
public static void main(String[] args) throws UnknownHostException {
InetAddress ip = InetAddress.getLocalHost();
System.out.println(ip.getHostAddress());//获取本机IP地址
System.out.println(ip.toString());//获取本机主机名与IP地址
}
}
Socket
套接字,管道
网络通讯也叫socet通讯,数据在两个socket之间进行传输
UDP和TCP协议的区别
UDP:
(1)传输数据之间不要建立连接,不可靠的传输协议
(2)因为不需要建立连接,速度快
(3)一次只能传输64K的数据报
TCP
(1)传输之间需要建立连接(三次握手)、可靠的传输协议
(2)因为需要建立连接,效率稍低
(3)在连接中可以传输大量的数据。
Http的底层TCP
TCP(Transmission Control Protocol )
Java 提供了2个封装类,帮我们处理相关的操作
Socket:客户端socket
ServerSocket:服务器socket
服务器
提供服务的机器,一般情况下,不关机,随时相应请求
需要在机器上安装服务器软件
主流服务器:
IIS(微软):C#
apache:PHP
tomcat:Java
nginx:负载均衡
Junit
单元测试,它是一个框架,
什么是框架
框架是一个半成品,给我们实现了一部分功能,能够直接供我们使用,我们不需要自己的去开发。我们要学的,学API,学会怎么用他。。
使用别人的框架,往往框架需要给我们提供一些东西(代码)给我们
Java:jar包,
js:XX.js
使用
导包
借助IDEA开发工具自动导入
在方法上加上标签
@Test
@before
import org.junit.Before;
import org.junit.Test;
public class User {
@Before
public void before(){
System.out.println("before");
}
@Test
public void print(){
System.out.println("print");
int sum = 0;
for (int i = 0; i <100; i++) {
sum +=0;
}
}
}