Chương 5:RPC & RMI(Remote Method Invocation)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

Chương 5:RPC & RMI(Remote Method Invocation)

Bài gửi  Admin on Thu Oct 03, 2013 12:56 pm

File ảnh code của thầy Thái Minh Tuấn: https://dl.dropboxusercontent.com/u/37573907/LapTrinhMangRMI.zip

Bước 01: Tạo giao diện (interface) khai báo các phương thức được gọi từ xa của đối tượng:
Code:

//Buoc1: Tao giao dien (interface) khai bao cac phuong thuc duoc goi tu xa cua doi tuong
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface FileItf extends Remote
{
 String listFile(String dir) throws RemoteException;
}
.
.
.
Bước 02: Tạo lớp cài đặt (implements) cho giao diện đã được khai báo:

Code:

//Buoc2: Tao lop cai dat (implement) cho giao dien da duoc khai bao
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import java.io.File;

class ListFile extends UnicastRemoteObject implements FileItf
{
 public ListFile() throws RemoteException{
 super();
 }
 public String listFile(String dir){
 File file = new File(dir);
 String reply = "";
 if(file.isDirectory()){
 String list[] = file.list();
 for(int j=0; j<list.length; j++){
 reply += list[j] + "\n";
 }//for
 }//if
 else reply = "Khong phai la thu muc";
 return reply;
 }
}
.
.
.
Bước 03: Viết chương trình SERVER:

Code:

//Buoc3: Viet chuong trinh Server
import java.rmi.Naming;
public class FileServer
{
 public static void main(String[] args){
 try
 {
 System.out.println("...............");
 ListFile obj = new ListFile();//tao doi tuong duoc goi tu xa
 Naming.rebind("ListFileObject",obj);//dang ki doi tuong voi RMIRegistryServer
 System.out.println("Dang ky thanh cong!");
 }
 catch (Exception e)
 {
 System.out.println(e);
 }
 }
}
.
.
.
Bước 04: Viết chương trình CLIENT:

Code:

//Buoc4: Viet chuong trinh Client
import java.rmi.Naming;
public class FileClient
{
 public static void main(String[] args){
 try{
 String fileURL = "rmi://127.0.0.1/ListFileObject";
 FileItf object = (FileItf)Naming.lookup(fileURL);
 String str = object.listFile(".");
 System.out.print(str);
 }
 catch(Exception e){
 System.out.print(e);
 }
 }
}
.
.
.
Kết quả:

Admin
Admin

Tổng số bài gửi : 217
Reputation : 20
Join date : 17/11/2012
Age : 24

Xem lý lịch thành viên http://elcit.forumvi.com

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết