当前位置:编程学习 > JAVA >>

Java communication software design2(updating...)

Client Server Broadcasting String and Track the Client
 
Provider.java:
[java]
import java.io.*; 
import java.net.*; 
public class Provider{ 
    ServerSocket providerSocket; 
    Socket connection = null; 
    ObjectOutputStream out; 
    ObjectInputStream in; 
    String message; 
    Provider(){} 
    void run() 
    { 
        try{  www.zzzyk.com
            //1. creating a server socket 
            providerSocket = new ServerSocket(2004, 10); 
            //2. Wait for connection 
            System.out.println("Waiting for connection"); 
            connection = providerSocket.accept(); 
            System.out.println("Connection received from " + connection.getInetAddress().getHostName()); 
            //3. get Input and Output streams 
            out = new ObjectOutputStream(connection.getOutputStream()); 
            out.flush(); 
            in = new ObjectInputStream(connection.getInputStream()); 
            sendMessage("Connection successful"); 
            //4. The two parts communicate via the input and output streams 
            do{ 
                try{ 
                        message = (String)in.readObject(); 
                        System.out.println("client>" + message); 
                        if (message.equals("bye")) 
                                sendMessage("bye"); 
                } 
                catch(ClassNotFoundException classnot){ 
                        System.err.println("Data received in unknown format"); 
                } 
            }while(!message.equals("bye")); 
        } 
        catch(IOException ioException){ 
                ioException.printStackTrace(); 
        } 
        finally{ 
            //4: Closing connection 
            try{ 
                    in.close(); 
                    out.close(); 
                    providerSocket.close(); 
            } 
            catch(IOException ioException){ 
                    ioException.printStackTrace(); 
            } 
        } 
    } 
    void sendMessage(String msg) 
    { 
        try{ 
                out.writeObject(msg); 
                out.flush(); 
                System.out.println("server>" + msg); 
        } 
        catch(IOException ioException){ 
                ioException.printStackTrace(); 
        } 
    } 
    public static void main(String args[]) 
    { 
        Provider server = new Provider(); 
        while(true){ 
                server.run(); 
        } 
    } 

Requester.java:
 
[java]
import java.io.*; 
import java.net.*; 
public class Requester{ 
    Socket requestSocket; 
    ObjectOutputStream out; 
    ObjectInputStream in; 
    String message; 
    Requester(){} 
    void run() 
    { 
        try{ 
            //1. creating a socket to connect to the server 
            requestSocket = new Socket("localhost", 2004); 
            System.out.println("Connected to localhost in port 2004"); 
            //2. get Input and Output streams 
            out = new ObjectOutputStream(requestSocket.getOutputStrea

补充:软件开发 , Java ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,