自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺談JAVA中如何利用socket進行網(wǎng)絡(luò)編程(二)

開發(fā) 后端
所謂socket通常也稱作"套接字",用于描述IP地址和端口,是一個通信鏈的句柄。應(yīng)用程序通常通過"套接字"向網(wǎng)絡(luò)發(fā)出請求或者應(yīng)答網(wǎng)絡(luò)請求。 本文介紹的是JAVA中的socket網(wǎng)絡(luò)編程,希望對你有幫助,一起來看。

Socket是網(wǎng)絡(luò)上運行的兩個程序間雙向通訊的一端,它既可以接受請求,也可以發(fā)送請求,利用它可以較為方便的編寫網(wǎng)絡(luò)上的數(shù)據(jù)的傳遞。在java中,有專門的socket類來處理用戶的請求和響應(yīng)。利用SOCKET類的方法,就可以實現(xiàn)兩臺計算機之間的通訊。這里就介紹一下在JAVA中如何利用socket進行網(wǎng)絡(luò)編程。

接第一篇淺談JAVA中如何利用socket進行網(wǎng)絡(luò)編程(一)

在上一篇中我們已經(jīng)和大家說到客戶端的網(wǎng)絡(luò)編程,下面和大家分享的是服務(wù)器的實現(xiàn)代碼。

 

  1. import java.net.*;  
  2. import java.io.*;  
  3. import java.awt.event.ActionEvent;  
  4. import java.awt.event.ActionListener;  
  5. public class talkServer  
  6. public static void main(String[] args)  
  7.  { try 
  8.   { file://建立服務(wù)器  
  9.    ServerSocket server = new ServerSocket(9998);  
  10.    int i=1;  
  11.    for(;;)  
  12.     { Socket incoming = server.accept();  
  13.      new ServerThread(incoming,i).start();  
  14.      i++;  
  15.     }  
  16.    }catch (IOException ex){  
  17.    ex.printStackTrace();  
  18.   }  
  19.  }  

  1. class ServerThread extends Thread implements ActionListener  
  2. {  
  3.  private int threadNum;  
  4.  private Socket socket;  
  5.  talkServerFrm t;  
  6.  BufferedReader in;  
  7.  PrintWriter out;  
  8.  private boolean talking=true;  
  9.  public ServerThread(Socket s,int c)  
  10.  { threadNum = c;  
  11.   socket = s;  
  12.  } 
  1. public void actionPerformed(ActionEvent e)  
  2. { Object source = e.getSource();  
  3.  try{  
  4.   if(source==t.btnSend)  
  5.    { out.println(t.getTalk());  
  6.     t.clearTalk();  
  7.   }else 
  8.   if(source==t.btnEnd)  
  9.    { out.println("談話過程被對方終止");  
  10.     out.close();  
  11.     in.close();  
  12.     talking = false;  
  13.    }  
  14.  }catch(IOException ex){  
  15.  }  
  1. public void run()  
  2. try{  
  3.   t=new talkServerFrm(new Integer(threadNum).toString(),this);  
  4.   t.setSize(500,500);  
  5.   t.show();  
  6.   in = new BufferedReader(new   
  7.       InputStreamReader(socket.getInputStream()));  
  8.   out = new PrintWriter(socket.getOutputStream(),true);  
  9.  }catch(Exception e){  
  10. }  
  11.  new Thread()  
  12.  { public void run()  
  13.   { try{  
  14.     while(true)  
  15.     { checkInput();  
  16.      sleep(1000);  
  17.   }  
  18.  }catch (InterruptedException ex){  
  19.  }catch(IOException ex){  
  20.  }  
  21.  }  
  22.  }.start();  
  23.  while(talking)  
  24.  { }  
  25.  t.dispose();  
  26.  } 

 

  1. private void checkInput() throws IOException  
  2. { String line;  
  3.  if((line=in.readLine())!=null)  
  4.   t.setPartner(line); file://這是界面類里的方法,  
  5.   file://用來將line的內(nèi)容輸出到用戶界面  
  6.  }  
  7. }  

到此,java中的socket網(wǎng)絡(luò)編程就給大家介紹完啦!希望對大家有幫助。

【編輯推薦】

  1. JAVA語言關(guān)于字符串替換的思考
  2. JAVA語言中關(guān)于EJB技術(shù)概論
  3. java/.net語言及IDE簡易對比
  4. java中的類和方法的修飾符
  5. Java編程語言基礎(chǔ)JSP基本語法的詳細介紹
責任編輯:于鐵 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-06-13 11:23:33

javasocket

2012-03-19 10:55:27

JavaSocket

2009-06-15 15:17:32

JCOMExcel編程Java

2009-06-15 17:45:20

LINQ分組統(tǒng)計

2013-03-27 13:26:04

Android開發(fā)Socket

2011-07-05 10:20:38

java

2010-03-03 16:19:29

Python Sock

2009-06-17 15:13:57

Java網(wǎng)絡(luò)功能編程方法

2016-09-26 17:09:28

Java并發(fā)編程內(nèi)存模型

2011-04-02 12:52:37

MRTG監(jiān)控

2009-07-03 11:27:11

JSP編程思想

2012-03-19 11:41:30

JavaSocket

2015-04-24 09:48:59

TCPsocketsocket編程

2011-12-07 16:50:29

JavaNIO

2011-06-13 16:51:19

Qt Socket

2009-05-12 10:36:38

OracleREDO恢復(fù)

2015-03-10 13:43:00

JavaSocket編程編程

2009-07-16 17:06:55

JSP網(wǎng)頁中JDBC代

2025-04-27 04:05:00

AI模型爬蟲

2011-12-08 10:24:53

JavaNIO
點贊
收藏

51CTO技術(shù)棧公眾號