URL : [ Ссылка ]
Whats App : +91-7709146310
Email Us :- digitalitprojects@gmail.com
Follow Link:- [ Ссылка ]
CalculatorRmi.java
package calculatorrmi;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class CalculatorRmi extends UnicastRemoteObject implements CalculatorInterface{
public CalculatorRmi() throws RemoteException
{
int a,b;
}
public int add(int a , int b)throws RemoteException
{
return a+b;
}
public int sub(int a , int b)throws RemoteException
{
return a-b;
}
public int mul(int a , int b)throws RemoteException
{
return a*b;
}
public int div(int a , int b)throws RemoteException
{
return a/b;
}
}
CalciClient.java
package calculatorrmi;
import java.rmi.Naming;
import java.net.MalformedURLException;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.util.Scanner;
public class CalciClient {
public static void main(String[] args)throws NotBoundException,MalformedURLException,RemoteException{
Scanner sc = new Scanner(System.in);
try {
CalculatorInterface c = (CalculatorInterface)Naming.lookup("rmi://localhost:1099/Calculator");
System.out.println("Client is connected to server");
System.out.println("Please Enter Your Choice : \n"
+"1. add\n"
+"2. sub\n"
+"3. mul\n"
+"4. div\n");
int choice = sc.nextInt();
int x,y;
switch (choice)
{
case 1:
{
System.out.println("Enter x and y");
x=sc.nextInt();
y=sc.nextInt();
System.out.println(c.add(x, y));
break;
}
case 2:
{
System.out.println("Enter x and y");
x=sc.nextInt();
y=sc.nextInt();
System.out.println(c.sub(x, y));
break;
}
case 3:
{
System.out.println("Enter x and y");
x=sc.nextInt();
y=sc.nextInt();
System.out.println(c.mul(x, y));
break;
}
case 4:
{
System.out.println("Enter x and y");
x=sc.nextInt();
y=sc.nextInt();
System.out.println(c.add(x, y));
break;
}
}
} catch (Exception e) {
}
}
}
CalculatorServer.java
package calculatorrmi;
import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry;
import java.rmi.RemoteException;
import java.rmi.NotBoundException;
public class CalculatorServer {
public static void main(String[] args) throws RemoteException,NotBoundException{
/*
try {
Registry r = java.rmi.registry.LocateRegistry.createRegistry(1099);
r.rebind("Calculator", new CalculatorRmi());
System.out.println("Server is Running");
} catch (Exception e) {
System.out.println("Server nt connected "+e);
}*/
Registry r = java.rmi.registry.LocateRegistry.createRegistry(1099);
r.rebind("Calculator", new CalculatorRmi());
System.out.println("Server is Running");
}
}
CalculatorInterface.java
package calculatorrmi;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface CalculatorInterface extends Remote {
public int add(int x, int y)throws RemoteException;
public int sub(int x, int y)throws RemoteException;
public int mul(int x, int y)throws RemoteException;
public int div(int x, int y)throws RemoteException;
}
![](https://i.ytimg.com/vi/YchiJXEs7u0/maxresdefault.jpg)