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

    网络编程就是通过网络进行程序数据操作,既然是网络开发,就一定分为用户端和服务端

    1.C/S和B/S的区别

    C/S要开发两套程序,一套是服务端,一套是与之对应的客户端,但是这种程序在进行维护时需要维护两套程序,而且客户端的程序更新也要及时,此类程序较安全,

    B/S只需开发一套系统,只开发服务器端的,客户端使用浏览器进行访问,这种程序进行程序维护时只需要维护服务器端即可,客户端不需要做任何更改,此类程序使用公共端口,包括公共协议,所以安全性不高.

    1.1 ServerSocket类

      是一个封装支持TCP协议的操作类,主要工作在服务器端,用于接收客户端请求;

    1.public ServerSocket(int port) throws IOExcepion//构造方法,开启一个指定的端口监听,一般使用5000以上
    2.public Socket accept() throws IOException//服务器端接收客户端请求,通过Socket返回
    3.public void close() throws IOException//关闭服务器端
    

    1.2 Scoket类

      是一个封装了TCP协议的操作类,每一个Scoket对象都表示一个客户端

    1.public Socket(String host,int port) throws UnknowHostException,IOException//指定要链接的主机(IP)和端口
    2.public OutputStream getOutputStream()//取得指定客户端的输出对象
    3.public InputStream getInputStream()//从指定的客户端读取数据
    

    程序可以通过Socket类的getInputStream()方法取得服务器的输出信息在服务端可以通过getOutputStream()方法取得客户端的输出信息

    1.3 举例

    服务端

    public class Client {
       public static void main(String[] args) throws UnknownHostException, IOException {
    	Socket client=new Socket("localhost",9999);
    	Scanner scan=new Scanner(client.getInputStream());
    	if(scan.hasNext()) {
    		System.out.println("服务器返回的数据:"+scan.next());
    	}
    	scan.close();
    	client.close();
    }
    }
    

     客户端

    public class Client {
       public static void main(String[] args) throws UnknownHostException, IOException {
    	Socket client=new Socket("localhost",9999);
    	Scanner scan=new Scanner(client.getInputStream());
    	if(scan.hasNext()) {
    		System.out.println("服务器返回的数据:"+scan.next());
    	}
    	scan.close();
    	client.close();
    }
    }
    
  • 相关阅读:
    2019牛客多校第二场H题(悬线法)
    hdu6212 Zuma(区间dp)
    uva1428树状数组
    UVA1395 (最苗条的最小生成树)
    牛客练习赛53 C题bitset
    Love Live!
    Princess principal
    New Game!- 牛客
    P3311 [SDOI2014]数数
    [HNOI2008]GT考试
  • 原文地址:https://www.cnblogs.com/cainame/p/10417117.html
Copyright © 2011-2022 走看看