一.计算机网络
把不同区域的计算机以网络形式连接起来,形成能够互相通信计算机群
主要作用:
1.资源共享
2.信息的传输与集中处理
3.均衡负荷,与分布处理
二.网络分类
1,局域网
2.校园网
3.城域网
4.广域网
三.网络设备
1.路由器
2.交换机
四.ip地址
ipv4:
网络中的每台计算机的唯一标识;
0~255
例:192.168.16.16 局域网
180.101.49,12百度的ip地址
ipv6:
ipv6:冒分16进制表示方法,八个整数用点分开
每个十六进制数字代表一个16bits整数
如CDCD:910A:2222:5498:8475:1111:3900:2020
fe80::7955:30d9:dd21:90e9%19
域名:www.baidu.com //com :company 公司 国际顶级域名
www.ansap.cn //cn: 中国 中国独有域名 148.70.115.151
edu:教育
org:政府
net:网络
本机IP:
127.0.0.1本机IP
192.168.16.24局域网本机IP
localhost:本机ip
端口号:
0~65536 16位
0~1023 公认端口,已经被占用,被预留
1024~65536都可以使用
1521:oracle数据库的端口号
3306:mysql数据库的端口
80:Http协议访问网站默认端口
21:ftp端口
1433:sqlserver数据库端口
五.网络通信协议:
TCP/IP协议:面向连接的,可靠的网络通信协议。
UDP协议:无连接的不可靠的报文流通信协议。
六.InetAddress类:
此类表示Internet协议(IP)地址。
通过该类获取网络主机的ip地址和主机名称。
根据域名获取IP地址:
getByName(String str);
获取IP地址:
getHostAddress();
获取主机名称:
getHostName();
获取本机的IP地址:
getLocalhost():
JDK通信相关的类:
包:java.net下的类
InetAddress:获取IP地址或者主机清除的类
TCP协议相关的类:
Socket:套接字 网络编程客户端处理
构造方法:
Socket(String ip,int port);
ip:连接服务器的ip地址
port:连接服务器的端口
常用方法:
getInputStream();获取输入流
getOutputStream();获取输出流
close();关闭套接字
ServerSocket: 网络通信编程服务器端处理
构造方法:
ServerSocket(int port);带参构造:port指:服务器发布时指定的端口
常用方法:
Socket accept(); 监听连接到该服务器的socket客户端
close();关闭资源
七. 网络通信实现步骤服务器端:
1.创建一个服务器端,发布一个指定端口
ServerSocket server = new ServerSocket(8888);
2.监听接收客户端连接
Socket socket = server.accept();
3.通过接收到的客户端对象,创建输入流对象,获取客户端传入信息
InputStream in = socket.getInputStream();
4.通过InputStream流对象,读取信息
in.read(byte[1024]);
5.把接收到的信息打印出来
6.关闭资源
server.close();
客户端实现步骤:
1.创建socket对象,参数:服务器的ip地址和端口号
Socket socket = new Socket("192.168.16.24",8888);
2.获取输出流
OutputStream out = socket.getOutputStream();
3.写入数据
out.write("网络编程很好学".getBytes());
4.关闭资源
socket.close();
聊天室:
结合多线程和网络编程实现多人聊天室功能。
1.发布服务器
2.通过while循环接受客户端的连接
把接受到客户端放入list列表
3.开启线程,接受客户发送的信息,再循环发送个所有的客户端,实现信息共享
4.客户端
1>一个用于接受服务器发送的信息
2>一个用于发送信息到服务器
八. UDP协议相关的类:
DatagramPacket:封装数据包的类
DatagramSocket:数据包通信的类
MulticastSocket:数据广播类