Java 網絡編程1

talnet工具與Socket類

現在單機的程序已經不太能適合用戶的須要,網絡編程變得比以往更加劇要。
首先須要認識一下talnet工具,能夠使用該工具來鏈接服務器
在終端中輸入,能夠進入本地的80端口java

talnet 127.0.0.1 80

須要咱們輸入ip地址和端口號,使用「www.sina.com」等域名也能夠代替IP地址。編程

Socket類和ServerSocket類

java利用socket套接字來鏈接網絡,Soket類提供兩個重要的方法
1.InputStream getInputStream()
2.OutputStream getOutputStream()
用來獲取輸入流和輸出流。服務器

java利用ServerSocket類來創建一個服務器。網絡

ServerSocket s = new ServerSocket(8080)
Socket coming= s.accept();

以上代碼能夠建立一個監控本地端口8080的服務器,同時一旦有人發送鏈接服務器請求,會返回一個名爲coming的Socket對象。能夠利用Socket對象來獲取對服務器輸入和輸出。多線程

多用戶鏈接服務器

爲了使多個用戶可以同時鏈接服務器,能夠是用多線程技術。socket

...
//建立服務器
ServerSocket s = new ServerSocket(8080);
//具體處理
while(true){
    Socket coming=s.accept();
    Runnable r=new ThreadedEchoHandler(coming);
    
    Thread t=new Thread(r);
    t.start();
}
//使用多線程來實現多個客戶端鏈接
class ThreadedEchoHandler implements Runnable{
    ...
    public void run(){
        try{
            InputStream in=coming.getInputStream();
            OutputStream out=coming.getOutputStream();
            ...
            coming.close();
        }catch(IOException e){
        e.printStackTrace();
        }
    }
}
相關文章
相關標籤/搜索