[ Lập trình mạng với Java ] Lập trình SOCKET kết nôi Client - Server để tính tổng 2 số


/* 
 Viết chương trình:
  - Client: Nhập vào từ bàn phím 2 số nguyên (a,b). Client chờ nhận kết quả từ Server để in ra màn hình
 - Server: Nhận 2 số nguyên mà Client vừa gửi, tính tổng của chúng và gửi kết quả cho Client
*/ 

//----------CLIENT----------------------------------------
import java.net.UnknownHostException; 
import java.io.DataInputStream; 
import java.io.DataOutputStream; 
import java.io.IOException; 
import java.net.Socket; 


public class Socket_tong2so_client {

    public static void main(String []args) throws IOException 
    { 
        System.out.println("Client dang ket noi voi Server... "); 
        String a,b,tong; 

        //tao socket de ket noi toi server, Locallhost: server mặc định 
        Socket ClientSocket = new Socket("Localhost", 1234); 

        //thong bao da ket noi thanh cong 
        System.out.println("Da ket noi voi Server! "); 

        //tao luong nhap du lieu tu ban phim 
        DataInputStream inFromUser = new DataInputStream(System.in); 

        //tao luong nhan du lieu tu server 
        DataInputStream inFromServer = new DataInputStream(ClientSocket.getInputStream()); 

        //tao luong gui du lieu len server 
        DataOutputStream outToServer = new DataOutputStream(ClientSocket.getOutputStream()); 

        // nhap du lieu tu ban phim
        try{ 
            System.out.println("\n Nhap a :"); 
            a=inFromUser.readLine(); 
            System.out.println("\n Nhap b :"); 
             b=inFromUser.readLine(); 

            // gui len server 
             outToServer.writeBytes(a+'\n'); 
            outToServer.writeBytes(b+'\n'); 
        }catch(UnknownHostException e) 
        { 
            System.err.println("Server Not Found"); 
            System.exit(1); 
        }catch(IOException e) 
        { 
            System.err.println("Cannot make a connection"); 
            System.exit(1); 
        } 
         
        //nhan ve tu server 
        tong=inFromServer.readLine(); 

        //in ra man hinh 
        System.out.println("\n Ket qua :"+tong); 

        //dong luong gui du lieu len server 
        outToServer.close(); 

        //dong luong nhan du lieu tu server 
        inFromServer.close(); 

        //dong socket client 
        ClientSocket.close(); 
    } 



//----------SERVER----------------------------------------


import java.io.DataInputStream; 
import java.io.DataOutputStream; 
import java.io.IOException; 
import java.net.ServerSocket; 
import java.net.Socket; 

public class Socket_tong2so_server {
    public static void main(String []args) throws IOException 
    { 
        System.out.println("Server dang khoi dong... "); 
        String so1,so2,so3; 
        int tong; 

        // tao server socket 
        ServerSocket server = new ServerSocket(1234); 
        System.out.println("Server da san sang! "); 

        //tao 1 socket do ket noi tu client toi server 
        Socket connectionSocket = server.accept(); 

        //tao luong nhan du lieu tu client 
        DataInputStream inFromClient = new DataInputStream(connectionSocket.getInputStream()); 

        // tao luong gui du lieu toi client 
        DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream()); 

        // truyen du lieu tu client vao 2 bien so1 va so2 
        so1 = inFromClient.readLine(); 
        so2 = inFromClient.readLine(); 

        //ep so1 va so2 tu kieu String sang kieu Integer 
        int a = Integer.parseInt(so1); 
        int b = Integer.parseInt(so2); 

        //tinh tong a + b 
        tong = a + b; 

        //ep tong  sang kieu String 
        so3 = String.valueOf(tong); 

        //gui so3 ve client 
        outToClient.writeBytes(so3+'\n'); 

        //dong luong nhan du lieu tu client 
        inFromClient.close(); 

        //dong luong gui du lieu ve client 
        outToClient.close(); 

        //dong server socket 
        server.close(); 
    } 



/* 
Chú ý: Run class Server trước sau đó Run class Client
*/
 [Tải Code Chương trình tại đây (Lưu ý: Sau 5s, click Bỏ qua quảng cáo - Skin Ad)]



[Tham khao: Internet]