学习新得
TCP UDP协议的特点
TCP:传输控制协议 UDP:用户数据报协议
TCP协议的特点是面向连接,数据可靠安全;UDP协议面无法连接,数据不可靠。
套接字与端口
连接对内对外送达指定的数据的装置叫端口
将应用程序与端口连接起来的程序叫套接字
常见的端口号
HTTP服务一般使用80端口;FTP服务默认使用21端口。0到1023之间的端口号多用于一些知名的网络服务和应用,用户的普通网络建议使用1024以上的端口号,以避免冲突。
Server Socket服务套接字
Socket 套接字
Server服务端
Accept接收
Client客服端
package com.kdk.www;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Sdewrhio {
public static void main(String[] args) throws IOException {
//创建一个服务端对象套接字对象
ServerSocket ss=new ServerSocket(10086);
//通过服务端套接字对象调用accept方法监听客服端的请求
Socket s=ss.accept();
//使用Socket对象获取输入流对象
InputStream in=s.getInputStream();
//定义一个字节数组
byte[] b=new byte[1024];
//使用输入流对象读取内容
int len=in.read(b);
//将读取的内容转换成字符串并打印出来
String tt=new String(b,0,len);
System.out.println(tt);
}
}
package com.kdk.www;
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class Cweret{
public static void main(String[] args) throws UnknownHostException, IOException {
//创建一个客户端的socket对象
Socket s = new Socket("192.168.43.123",10086);
//通过socket对象调用getoutputSteam方法得到一个输出流对象
OutputStream out = s.getOutputStream();
//定义要向服务端发送的内容
String name = "你好啊,服务端!我是客户端0x69111";
//将内容转换成字节数组
byte[] b = name.getBytes();
//使用输出流对象调用write方法将内容写入流
out.write(b);
}
}