간단한javaRIM 구현

프록시 모드의 원격 프록시 단순화:
원격 인터페이스 만들기
package proxy;

import java.rmi.Remote;
import java.rmi.RemoteException;

/*
 *  
 */

public interface MyRemote extends Remote{
    
    public String sayHello() throws RemoteException;

}

원격 구현 작성 및 RMI 레지스터에 서비스 등록
pakage proxy

import java.rmi.Naming;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

public class MyRemoteImpl extends UnicastRemoteObject implements MyRemote{
    
    // UnicastRemoteobject  " "。    RemoteException  
    protected MyRemoteImpl() throws RemoteException {
        
    }

    @Override
    public String sayHello() throws RemoteException {
        return "Server says 'Hey'";
    }

    public static void main(String arg[]){
        System.out.println(" !");
        try{
            MyRemote service = new MyRemoteImpl();
            // 
            Naming.rebind("RemoteHello", service);
            
        }catch (Exception e){
            
        }
    }
}

터미널을 열어 MyRemoteImpl을 javac 컴파일합니다.
rmic로 MyRemoteImpl을 컴파일하면 MyRemoteImpl_Stub.class 파일.원격 에이전트의 보조 대상입니다.
터미널 다시 열기 rmiregistry 활성화(Naming.rebind 사용) 등록은 실행되어야 합니다
yRemoteImpl(java MyRemoteImpl)을 실행하여 원격 서비스 시작)
package proxy;

import java.rmi.Naming;

public class MyRemoteClient {
	
	public static void main(String arg[]){
		new MyRemoteClient().go();
	}
	
	public void go(){
		try {
			MyRemote service = (MyRemote) Naming.lookup("rmi://127.0.0.1/RemoteHello");
			String s = service.sayHello();
			System.out.println(s);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

클라이언트 실행
주의: Myeclipse에서 Eclipse는 rmic 컴파일을 지원하지 않습니다. 플러그인을 다운로드하고 설치해야 합니다

좋은 웹페이지 즐겨찾기