Java網(wǎng)絡(luò)編程是Java主要應(yīng)用的地方,它涉及到多方面的知識。首先我們要明白網(wǎng)絡(luò)通信協(xié)議,然后是有關(guān)IO的知識。由于是初學(xué)這部分內(nèi)容,因此有關(guān)Java網(wǎng)絡(luò)編程的技術(shù)我也不好深入給大家分析。下面我給大家介紹一個基本的網(wǎng)絡(luò)程序,要說到網(wǎng)絡(luò)編程首先明確,要有一個服務(wù)器端和一個用戶端。要實現(xiàn)網(wǎng)絡(luò)通信必須得是雙方的事情嗎。

服務(wù)器端的編寫:

package com.dr1110;

import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class Server1 {
      public static void main(String[] args) throws IOException{
          ServerSocket ss = new ServerSocket(9999);
          while(true){
              System.out.println("------------start--------------");
              Socket s = ss.accept();
              DataOutputStream dos = new DataOutputStream(s.getOutputStream());
              System.out.println("客戶端地址:"+s.getInetAddress()+"客戶端端口: "+s.getPort());
              dos.writeUTF("服務(wù)器端地址:"+s.getLocalAddress().getHostAddress()+"服務(wù)器端端口:"+s.getLocalPort());
              dos.flush();
              dos.close();
              s.close();
          }
      }
}

客戶端的編寫:

package com.dr1110;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.Socket;

public class Client {
     public static void main(String [] args){
         Socket client = null;
         try{
             client = new Socket(""localhost"",9999);
         }catch(Exception e){}
         String str = null;
         BufferedReader buf = null;
         try{
             buf = new BufferedReader(new InputStreamReader(client.getInputStream()));
             str = buf.readLine();      
         }catch(Exception e){}
         System.out.println(str);
     }
}

當我們在兩臺機子上面分別運行這兩個程序時,就會實現(xiàn)兩臺機子的通信了。在網(wǎng)絡(luò)通信中,主要是用到了Socket和ServerSocket這兩個類創(chuàng)建對象。Socket構(gòu)建一個套接字,用來連接制定的主機和端口。ServerSocket類創(chuàng)建一個服務(wù)端套接字,用來監(jiān)聽制定的端口,入9999。這是有關(guān)網(wǎng)絡(luò)編程中最簡單的例子了,隨著學(xué)習(xí)的深入,有關(guān)這方面的應(yīng)用會越來越多。