© 2017

Chương trình tính tổng 3 số nguyên với giao thức RMI trong Java

NLD Code - Chương trình tính tổng 3 số nguyên với giao thức RMI trong Java là một chương trình khá đơn giản để gọi đối tượng từ xa trong giao thức RMI...

Chương trình tính tổng 3 số nguyên với giao thức RMI trong #Java là một chương trình khá đơn giản để gọi đối tượng từ xa trong giao thức #RMI.

Tạo tập tin với tên Calculator.java

Bước 1: Chèn thư viện rmi
import java.rmi.*;
Bước 2: Tạo một interface có kế thừa Remote
public interface Calculator extends Remote{
}
Bước 3: Tạo phương thức addNum
public int addNum(int a, int b, int c) throws RemoteException;
Và đoạn code hoàn chỉnh nhất cho tập tin Calculator.java được thể hiện như bên dưới
import java.rmi.*;
public interface Calculator extends Remote{
    public int addNum(int a, int b, int c) throws RemoteException;
}

Tạo tập tin với tên CalculatorImpl.java

Bước 1: Chèn thư viện rmi
import java.rmi.*;
import java.rmi.server.*;
Bước 2: Tạo lớp thực thi implements cho interface
public class CalculatorImpl extends UnicastRemoteObject implements Calculator {
}
Bước 3: Khai báo phương thức khởi tạo
public CalculatorImpl() throws RemoteException {
}
Bước 4: Xử lý phương thức tính toán và trả về kết quả
public int addNum(int a, int b, int c) throws RemoteException {
    System.out.println("\n May khach yeu cau tinh!");
    return (a+b+c);
}
Và đoạn code hoàn chỉnh nhất cho tập tin CalculatorImpl.java được thể hiện như bên dưới
import java.rmi.*;
import java.rmi.server.*;
public class CalculatorImpl extends UnicastRemoteObject implements Calculator {
    public CalculatorImpl() throws RemoteException {
    }
    public int addNum(int a, int b, int c) throws RemoteException {
        System.out.println("\n May khach yeu cau tinh!");
        return (a+b+c);
    }
}

Tạo tập tin với tên CalculatorServer.java

Bước 1: Chèn thư viện rmi
import java.rmi.*;
import java.rmi.server.*;
Bước 2: Đăng ký remote object
Calculator ca = new CalculatorImpl();
Bước 3: Tạo đối tượng rmi
Naming.bind("rmi://localhost/Calculator", ca);
Và đoạn code hoàn chỉnh nhất cho tập tin CalculatorServer.java được thể hiện như bên dưới
import java.rmi.*;
import java.rmi.server.*;
public class CalculatorServer { 
    public static void main(String[] args) {
        try {
            Calculator ca = new CalculatorImpl();
            System.out.println("\n Dang ky remote thanh cong...");
            Naming.bind("rmi://localhost/Calculator1", ca);
            System.out.println("\n Tao doi tuong rmi thanh cong...");   
        }catch (Exception e) {
            System.out.println(" Loi: " + e);
        }  
    }
}

Tạo tập tin với tên CalculatorClient.java

Bước 1: Chèn thư viện rmi và util
import java.rmi.*;
import java.util.*;
Bước 2: Tạo kết nối đến máy chủ
Calculator ca = (Calculator)Naming.lookup("rmi://localhost/Calculator");
Bước 3: Tạo đối tượng nhập từ bàn phím
Scanner in = new Scanner(System.in);
Bước 4: Nhận các giá trị nhập từ bàn phím
System.out.print(" a = ");
int a = in.nextInt();
System.out.print(" b = ");
int b = in.nextInt();
System.out.print(" c = ");
int c = in.nextInt();
Bước 5: In ra kết quả tính được
System.out.println(" Ket qua: " + ca.addNum(a, b, c));
Và đoạn code hoàn chỉnh nhất cho tập tin CalculatorClient.java được thể hiện như bên dưới
import java.util.*;
import java.rmi.*;
public class CalculatorClient {
    public static void main(String[] args) {
        try {
            System.out.println("\n Ket noi den may chu...");
            Calculator ca = (Calculator)Naming.lookup("rmi://localhost/Calculator1");
            Scanner in = new Scanner(System.in);
            while (true){
                System.out.print(" a = ");
                int a = in.nextInt();
                System.out.print(" b = ");
                int b = in.nextInt();
                System.out.print(" c = ");
                int c = in.nextInt();
                System.out.println(" Ket qua: " + ca.addNum(a, b, c));
                if(a == 0 || b == 0 || c == 0){
                    break;
                }
            }
        }catch (Exception e) {
            System.out.println(" Loi: "+ e);
        }
    }
}

Chúc các bạn thành công và vui vẻ!

Chia sẻ
Nguyễn Lê Điệp

Nguyễn Lê Điệp

Có sở thích lập trình, viết lách nên đã từng tham gia ở một số diễn đàn, đến năm 2017 mới có điều kiện sáng lập ra Nguyễn Lê Điệp chấm Com. Được sinh ra ở Bình Định, đang học tập và làm việc tại thành phố Hồ Chí Minh...