您的位置:首页 > 理论基础 > 计算机网络

java封装TCP UDP协议

2014-09-02 09:15 204 查看
网络层:   InetAddress 表示网络当中的一台计算机

TCP 通信:1、创建socket/serviceSocket对象

                   2、根据socket创建输入输出流对象(创建信道)
  3、往输入输出流读写数据
  4、关闭输入输出流和socket
  面向连接的通信,安全可靠,但是效率低

UDP 通信: 面向无连接的通信,发送的是数据报,效率快。

                   1、创建InetAddress对象
  2、创建相应的DatagramPacket(接受和发送不一样)
  3、创建相应的DatagramSocket
  4、接收发送相应的数据

    import java.net.ServerSocket;
import java.net.Socket;
import java.io.*;

    /**
 TODO ServiceSocket demo
 @author 张文斌
 @version 1.0 2014/9/1
*/
public class ServerSocketTest{
 public static void main(String[] args){
    Socket mySocket = null;
    DataOutputStream os = null;
DataInputStream is = null;
ServerSocket serverSocket = null;
try{
  serverSocket = new ServerSocket(3333);//创建serviceSocket
  mySocket = serverSocket.accept();
  is = new DataInputStream(mySocket.getInputStream());

  os = new DataOutputStream(mySocket.getOutputStream());//得到一个服务器端的输入流对象
  while(true){
    String msg = "你好客户端";

                  os.writeUTF(msg);

   Thread.sleep(1000);
   System.out.println("服务器发送:"+msg); 
    System.out.println("服务器接收:"+is.readUTF()); 
  }
}catch(InterruptedException e){
   

}catch(IOException e){
  System.out.println("连接出错!!");
}
 }
}

import java.net.Socket;
import java.io.*;

    /**
 TODO ClientSocket demo
 @author 张文斌
 @version 1.0 2014/9/1
*/
public class ClientSocketTest{
 public static void main(String[] args){
    DataOutputStream os = null;
DataInputStream is = null;
Socket socket = null;
try{socket = new Socket("127.0.0.1",3333);//创建serviceSocket
  is = new DataInputStream(socket.getInputStream());

                  os = new DataOutputStream(socket.getOutputStream());//得到一个服务器端的输入流对象
  while(true){

      String msg = "你好主机";

       os.writeUTF(msg);

    Thread.sleep(1000);
    System.out.println("客户端发送:"+msg);
    System.out.println("客户端接收:"+is.readUTF());
  }
}catch(InterruptedException e){
   

}catch(IOException e){
  System.out.println("连接出错!!");

 }
}

封装UDP:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java udp tcp 通信 socket