±âÃÊ RMI
Bank.java
import java.rmi.*;
public interface Bank extends Remote {
public int getBalance() throws RemoteException;
public int deposit(int amount) throws RemoteException;
public int withdraw(int amount) throws RemoteException;
}
C:\18>javac Bank.java
BankImpl.java
import java.rmi.*;
import java.rmi.server.*;
public class BankImpl extends UnicastRemoteObject implements Bank {
private int total;
public BankImpl(int total) throws RemoteException {
this.total = total;
}
public int getBalance() throws RemoteException {
return total;
}
public int deposit(int amount) throws RemoteException {
total += amount;
return getBalance();
}
public int withdraw(int amount) throws RemoteException {
total -= amount;
return getBalance();
}
public static void main(String[] args) throws Exception {
BankImpl bankip = new BankImpl(10000);
Naming.rebind("//localhost/BankIp", bankip);
System.out.println("bank was rebinded with name 'BankIp");
}
}
C:\18>javac BankImpl.java
C:\18>rmic BankImpl
BankClient.java
import java.rmi.*;
public class BankClient {
public static void main(String[] args) throws Exception {
int balance = 0;
Bank bank = (Bank)Naming.lookup("//localhost/BankIp");
System.out.println("Bank was given from Server");
balance = bank.getBalance();
System.out.println("current balance : " + balance);
balance = bank.deposit(1000);
System.out.println("deposit 1000");
System.out.println("current balance : " + balance);
balance = bank.withdraw(5000);
System.out.println("withdraw 5000");
System.out.println("current balance : " + balance);
}
}
C:\18>javac BankClient.java
C:\18>rmiregistry
C:\18>java BankImpl
bank was rebinded with name 'BankIp
C:\18>java BankClient
Bank was given from Server
current balance : 10000
deposit 1000
current balance : 11000
withdraw 5000
current balance : 6000
¿ø°Ý°´Ã¼ÀÇ ÀÎÅÍÆäÀ̽º¸¦ ÀÛ¼ºÇÏ°í ¿ø°Ý °´Ã¼ ¹× ¼¹ö ÇÁ·Î±×·¥ ÀÛ¼ºÇÕ´Ï´Ù. Stub/SkeletonÀ» »ý¼ºÇÏ°í ¿ø°Ý°´Ã¼¸¦ »ç¿ëÇÒ Å¬¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥À» ÀÛ¼ºÇÕ´Ï´Ù. ½ÇÁ¦ ¼ºñ½º¸¦ ÇϱâÀ§ÇØ RMI Registry¸¦ ½ÇÇàÇØ¼ Á¡°ËÇÏ°í ¼¹öÇÁ·Î±×·¥°ú Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥À» ½ÇÇàÇÕ´Ï´Ù.
jabookÀúÀÚ¸íÇÔ |
Á¦¸ñ:¼Ò¼³°°Àº¹Ì´ÏÄÚµå ÀÛ¼ºÀÚ:Àںϸâ¹ö ÀÌÇѼö |