zoukankan      html  css  js  c++  java
  • J2SE之网络编程

    一、网络基础

      网络通信协议:对速率、传输代码、代码结构、传输控制步骤、出错控制等制定标准。

      网络通信接口:硬件装置:实现节点之间的信息传输。

             软件装置:规定双方进行通信的协议。

        软件开发成员应掌握右边四层模型。

    二、TCP/IP协议

      IP协议:最大贡献——提供了独一无二的IP地址。

        -|IPV4

          子网掩码

          网关

        -|IPV6

          

      TCP:一种面向连接的协议。可靠的、端到端的字节流通信的协议。字节流。

         即一定可以将数据传输到位。数据包按顺序到达,不会乱序。如电话。

         效率较UDP低

         

      UDP:一种发送封装的原始IP数据报的方法、并且发送时无需建立连接。是一种不可靠的连接。

         只负责将数据发出,不管对方是否收到。如电报。

      TCP可靠,速度慢。

      UDP不可靠,速度快,效率高。

    三、SOCKET

      1、用来实现client-server连接

      2、java.net包中定义的两个类socket和serversocket分别用来实现双向连接的client和server端。

      3、建立连接时所需的寻址信息为远程计算机的IP地址和端口号(port)(开发时端口号用1024以后的)

        -|TCP端口与UDP端口不同

          每一个各有65536个端口

    import java.io.DataInputStream;
    import java.io.IOException;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    
    public class TCPServer {
        public static void main(String args[]) throws IOException{
            ServerSocket ss = new ServerSocket(6666);
            
            while(true){
            Socket s = ss.accept();    
            DataInputStream dis = new DataInputStream(s.getInputStream());
            
            System.out.println(dis.readUTF());
            
            dis.close();
            s.close();
            }
            
            
        }
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    import java.io.DataOutputStream;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.net.Socket;
    import java.net.UnknownHostException;
    
    
    public class TCPClient {
        public static void main(String args[]) throws UnknownHostException, IOException{
            Socket s = new Socket("127.0.0.1",6666);
            
            OutputStream os = s.getOutputStream();
            DataOutputStream dos = new DataOutputStream(os);
            
            dos.writeUTF("hello gay!");
            dos.flush();
            dos.close();
            s.close();
            
        }
    }
  • 相关阅读:
    vue Bus事件用法与bug
    移动端超出三行显示第三行显示省略号+查看全部
    Vuex
    vue点击旋转,再点击复原
    vue项目(cli-3)替换浏览器logo
    悬浮广告(二)vue版本
    悬浮广告(一)html版本
    vue下获得经纬度省市区
    一个可以输出当前移动设备机型(安卓,ios)系统版本的html页面
    谱聚类(spectral clustering)原理总结
  • 原文地址:https://www.cnblogs.com/elleniou/p/2614228.html
Copyright © 2011-2022 走看看