Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
2,56 MB
Nội dung
005.5 TRƢỜNG ĐẠI HỌC VINH KHOA CÔNG NGHỆ THÔNG TIN - Phạm Thị Lý Đặng Văn Nghĩa BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC ĐỀ TÀI: NGHIÊN CỨU LẬP TRÌNH PHÂN TÁN RMI, VIẾT ỨNG DỤNG MƠ PHỎNG MÁY RÚT TIỀN TỰ ĐỘNG Nghệ An, tháng 12 năm 2014 TRƢỜNG ĐẠI HỌC VINH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC ĐỀ TÀI: NGHIÊN CỨU LẬP TRÌNH PHÂN TÁN RMI, VIẾT ỨNG DỤNG MÔ PHỎNG MÁY RÚT TIỀN TỰ ĐỘNG Sinh viên thực hiện: Phạm Thị Lý - MSV: 1051078476 Đặng Văn Nghĩa - MSV: 1051070396 Giáo viên hướng dẫn: ThS Lê Văn Thành Nghệ An, tháng 12 năm 2014 Đồ án tốt nghiệp đại học MỤC LỤC trang LỜI CẢM ƠN CHƢƠNG GIỚI THIỆU VỀ RMI 1.1 Khái niệm chung 1.1.1 Java RMI (Remote Method Invocation) .2 1.1.2 Remote Interface, Remote Object, Remote Method 1.1.3 Name Server 1.1.4 Stub Skeleton 1.2 Nguyên tắc hoạt động Java RMI 1.2.1 Cơ chế hoạt động 1.2.2 Các công việc giải 1.3 Một số đặc điểm bật Java RMI C H Ƣ Ơ N G II LÂP TRÌNH PHÂN TÁN VỚI JAVA RMI .10 2.1 RMI lập trình phân tán đối tượng .10 2.2 Gọi phương thức từ xa vấn đề phát sinh 11 2.3 Vai trò lớp trung gian .11 2.4 Cài đặt đối tượng phân tán .13 2.4.1 Giao diện từ xa 13 2.4.2 Triển khai giao diện từ xa 14 2.4.3 Cài đặt, đăng kí đối tượng từ xa 14 2.4.4 Viết trình khách triệu gọi phương thức đối tượng cài đặt từ xa .17 CHƢƠNG III CÀI ĐẶT CHƢƠNG TRÌNH 23 3.1 Cài đặt cơng cụ lập trình số thú tục cần thiết 23 3.1.1 Cài đặt cơng cụ lập trình .23 3.1.1.1 Cài đặt JDK 1.7.0_45 23 3.1.1.2 Cài đặt Neatbeans 8.0.1 .23 3.1.1.3 Cài đặt SQL Server 2008 23 3.1.1.4 Cấu hình SQL Server 2008 23 3.1.2 Xây dựng chương trình ATM_Server 27 3.1.3 Xây dựng chương trình ATM Client 30 3.2 Nội dung chương trình 30 3.2.1 Cơ chế hoạt động 30 3.2.1.1 Đăng nhập 30 Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học 3.2.1.2 Tìm kiếm giao dịch, tìm kiếm tài khoản 31 3.2.1.3 Gửi tiền vào tài khoản .31 3.2.1.4 Chuyển khoản 32 3.3 Sơ đồ chế vận hành 33 3.4 Cấu trúc CSDL 35 3.5 Một số mã nguồn quan trọng 36 3.5.1 Class ATM Server 36 3.5.2 Class DBAccess 37 3.5.3 Class MyConnection 38 3.5.4 Class Transaction .39 3.6 Giao diện đồ họa người dùng .41 3.6.1 ATMManager .42 3.6.2 ATM Client 47 KẾT LUẬN 50 Kết đạt 50 Mặt hạn chế 50 3.Hướng phát triển 50 TÀI LIỆU THAM KHẢO 51 Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học LỜI CẢM ƠN Lời em xin bày tỏ biết ơn chân thành tới thầy giáo Ths Lê Văn Thành giảng viên khoa CNTT trường ĐH Vinh, người thầy trực tiếp hướng dẫn tận tình giúp đỡ bảo cho em suốt thời gian qua Cảm ơn thầy động viên, hướng dẫn định hướng cho em kiên thức vơ q báu để em hồn thành đồ án tốt nghiệp Em xin chân thành cảm ơn thầy giáo, cô giáo trường ĐH Vinh hết thầy giảng dạy khoa CNTT, người không ngừng nghỉ truyền đạt cho chúng em kiến thức lạ vô quý giá suốt năm học vừa qua Dưới em tìm hiểu nghiên cứu thời gian vừa qua Do tính thực tế tầm kiến thức cịn hạn chế nên kết chưa ý muốn em kính mong nhận bảo thầy giáo tham gia đóng góp ý kiến bạn để em hồn thành tốt đề tài Một lần em xin chân thành cảm ơn Nhóm Thực : Đặng Văn Nghĩa Phạm Thị Lý Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học LỜI MỞ ĐẦU Đồ án giới thiệu phương hướng suy nghĩ thực môi trường phân tán cách sử dụng chế RMI Java Chương trình thực đồ án ứng dụng cung cấp cho người sử dụng tính để điều khiển mơi trường tính tốn cách dễ dàng tiện dụng Về tính kỹ thuật mơi trường ta nói mơi trường cho phép người sử dụng sử dụng tài nguyên phân bố mạng Cụ thể hơn, môi trường cung cấp cho người sử dụng khả sử dụng nhớ khả xử lý CPU máy tính nối với mạng Chương trình thực cịn phục vụ nhu cầu cần có chế truy xuất quản lý hiệu tài nguyên tính tốn mạng Ngồi ra, chương trình cịn thỏa mãn nhu cầu tính dễ sử dụng cách cung cấp giao diện thân thiện Tính dễ sử dụng nhờ mơi trường thực khơng địi hỏi nổ lực lớn từ phía người sử dụng hệ thống Chiến lược cân tải chiến lược Fault Tolerance cho hệ thống quan tâm giải Cuối ta thấy, Java ngơn ngữ lập trình khơng phụ thuộc vào Platform, chương trình thực không phụ thuộc Platform Một cách rõ ràng hơn, chương trình chạy hệ điều hành khác cách dễ dàng Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học CHƢƠNG GIỚI THIỆU VỀ RMI 1.1 Khái niệm chung 1.1.1 Java RMI (Remote Method Invocation) RMI chế cho phép Object chạy Java Virtual Machine gọi Method Object tồn Java Virtual Machine (JVM) khác Sun thực chế cách xây dựng hệ thống gọi hệ thống Java Remote Method Invocation, hệ thống cung cấp số phương pháp truyền thơng chương trình viết Java Các chương trình viết Java sử dụng hệ thống gọi chương trình RMI Thực chất, RMI chế gọi hàm từ xa thực tích hợp ngơn ngữ Java, RMI phải đối phó với vấn đề RPC đối phó với xảy RPC cách giải vấn đề tương tự RPC Tuy nhiên, RMI có nhiều điểm tiện lợi RPC, việc RMI thực Java, mà Java ngơn ngữ lập trình hướng đối tượng, nên phương pháp lập trình RMI phương pháp hướng đối tượng, thao tác hay lời gọi hàm liên quan đến đối tượng Ngoài ra, RMI cịn cho phép Client gửi Object đến cho Server xử lý, Object xem tham số cho lời gọi hàm từ xa, cần ý Object có liệu bên hành vi Object thực 1.1.2 Remote Interface, Remote Object, Remote Method Cũng tất chương trình khác Java, chương trình RMI xây dựng Interface Class Interface định nghĩa Method, Class thực Method Class thực vài Method khác có Method khai báo Remote Interface Client gọi từ Java Virtual Machine khác, hay nói khác có Method khai báo Remote Interface nhìn thấy Client Vì vậy, Remote Interface Interface khai báo Method cho phép gọi từ xa Trong Java, Remote Interface có đặc điểm : - Thừa kế Interface có sẵn : Interface java.rmi.Remote - Mỗi Method Remote Interface muốn Remote Method phải khai báo throws java.rmi.RemoteException có Exception khác The Remote Object Object tạo phép Object khác JVM khác gọi tới Remote Object chứa số Method, Method cho phép gọi từ xa Method thực thi JVM gọi Server Các Method gọi Remote Method Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học Hình Remote Object, Remote Method 1.1.3 Name Server Như RPC, Name Server Process đóng vai trị trung gian việc tìm kiếm tham khảo tới Remote Object đó, cụ thể giúp Client tìm kiếm tham khảo (Reference) tới Remote Object mà Client cần Trong hệ thống Java RMI, Name Server máy hệ thống chúng ta, Name Server phải có vùng nhớ gọi Name Space dùng để chứa lại tên địa tương ứng Remote Object hệ thống Hình Name Server 1.1.4 Stub Skeleton Trong RPC, phần khơng thể thiếu để Process máy từ xa gọi thực thi Remote Method Remote Object máy Server chương trình Client Stub Server Stub (Java RMI gọi Stub Skeleton) Để có nhìn cụ thể hơn, ta trình bày nhiệm vụ Stub Skeleton Những công việc thực Stub Java RMI: - Tạo cầu nối với JVM có chứa Remote Object mà Client cần Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học - Marshals tham số cần cho việc gọi hàm thực việc gửi chúng - Chờ kết trả từ lời gọi hàm - Unmarshals gói liệu nhận để đọc giá trị trả hay Exception trả từ lời gọi hàm - Trả kết cho chương trình Client thực - Ngồi ra, Stub cịn đóng vai trị khác quan trọng, Stub nắm giữ tham khảo tới Remote Object để Remote Object không bị Giải phóng trình Gabage Collection tự động Java Khi có lời gọi hàm gửi tới Skeleton, Skeleton thực công việc sau : - Unmarshals gói liệu nhận để có thông tin cần thiết cho việc gọi hàm - Thực lời gọi hàm hệ thống thực thụ - Marshals kết trả gửi trả cho Client Hình Stub – Skeleton Với nhiệm vụ phần trên, ta thấy vài khác Client Stub,Server Stub RMI RPC sau : Stub (RMI) so với Client Stub (RPC) : - Stub khác với Client Stub chỗ Stub đóng vai trị người nắm giữ tham khảo tới Remote Object, điều giúp cho Remote Object không bị chế Garbage Collection xóa Trong đó, Client Stub khơng đóng vai trị - Stub cịn đóng vai trị quan trọng việc Sẽrialize Object, việc truyền khai báo Class cho Skeleton có yêu cầu Skeleton (RMI) so với Server Stub(RPC) : Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học - Server Stub không cần phải thực viện Sẽrialize Object khơng cần phải yêu cầu hay quan tâm đến việc tìm khai báo Class Trong Skeleton phải quan tâm đến điều 1.2 Nguyên tắc hoạt động Java RMI Một chương trình RMI thơng thường chia làm phần, chương trình Client chương trình Server Nhiệm vụ chương trình Server tạo số Remote Object làm cho tham khảo tới chúng tham khảo từ xa, sau ngồi chờ Client gọi để thực thi Sau có lời yêu cầu Server thực thi Method trả kết cho Client Nhiệm vụ chương trình Client tìm kiếm lấy tham khảo đến Remote Object mà cần từ máy Name Server đó, sau gọi Method Remote Object Nhiệm vụ hệ thống Java RMI cung cấp kỹ thuật để Server Client liên lạc với nhau, cụ thể kỹ thuật giúp cho Server Client truyền nhận thông tin qua lại với 1.2.1 Cơ chế hoạt động Hoạt động cụ thể chương trình RMI biểu diễn sau : Hình Cơ chế hoạt động chương trình RMI Như hình ta thấy chế hoạt động chương trình RMI sau : (1) Trên Server có số Remote Object với Remote Method muốn cho phép gọi từ xa, người viết Remote Object phải bố trí Stub, Skeleton Remote Interface WEB Server cho JVM khác truy cập được, cụ thể Client hay RMIRegistry truy cập Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa Đồ án tốt nghiệp đại học 3.5.2 Class DBAccess Đây lớp cho phép chương trình kết nối với CSDL, sử dụng hàm viết sẵn để tạo thống với CSDL, thao tác có sử dụng đến CSDL chương trình tham chiếu đến public class DBAccess { private Connection con; //biến kết nối private Statement stmt; // biến phát biểu public void DBAcess() { } //hàm update thực việc insert, update, delete CDSL public int Update(String str) { try { //tạo đối tượng lớp MyConnection MyConnection mycon = new MyConnection(); //biến kết nối lấy kết từ thưc hàm GetConnection class MyConnection = mycon.GetConnection(); //tạo giá trị cho biến phát biểu stmt = con.createStatement(); //thực phát biểu với câu truy vấn chuỗi str Giá trị phát biểu trả số nguyên i int i = stmt.executeUpdate(str); //Giá trị trả cho hàm update lớp DBAccess return i; } catch (Exception e) { //Thông báo lỗi trả giá trị -1 cho hàm update lớp DBAccess JOptionPane.showMessageDialog(null,e.toString(),"Loi",JOptionPane.ERROR_M ESSAGE); return -1; Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 37 Đồ án tốt nghiệp đại học } } //Hàm Query thực việc lấy liệu từ CSDL thông qua câu lệnh select public ResultSet Query(String srt) { try { //tạo đối tượng lớp MyConnection MyConnection mycon = new MyConnection(); //biến kết nối lấy kết từ thưc hàm GetConnection class MyConnection = mycon.GetConnection(); //tạo giá trị cho biến phát biểu stmt = con.createStatement(); //thực phát biểu với chuỗi truy vấn srt Giá trị trả nằm tập kết rs ResultSet rs = stmt.executeQuery(srt); //trả giá trị tập kết cho hàm Query lớp DBAccess return rs; } catch (Exception e) { JOptionPane.showMessageDialog(null,e.toString(),"Loi",JOptionPane.ERROR_M ESSAGE); return null; } } } 3.5.3 Class MyConnection Lớp tạo hàm kết nối chương trình với Database Cho phép chương trình sử dụng CSLD có sắn tạo CSLD Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 38 Đồ án tốt nghiệp đại học public class MyConnection { public Connection GetConnection() { try { //sử dụng driver jdbc4 Microsoft Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //định nghĩa chuỗi kết nối với port, user, password tên database String URL = "jdbc:sqlserver://Hongha\\SQLEXPRESS1:1433;user=sa;password=123@123a;Da tabase=ATMDatabase"; //khai báo biến kết nối, nhận giá trị kết nối với chuỗi kết nối URL Connection = DriverManager.getConnection(URL); return con; } catch (Exception e) { JOptionPane.showMessageDialog(null, e.toString(), "Loi", JOptionPane.ERROR_MESSAGE); return null; } } } 3.5.4 Class Transaction Chứa tất thuật toán chuyển khoản, nạp tiền, rút tiền… để client tham chiếu vào để thực giao dịch Mọi thuật toán giao dịch nằm Server nên tính bảo mật đảm bảo An tồn dễ bảo trì, sửa đổi nâng cấp public int TransAction(String cards, int money_value, String trans_type) throws RemoteException { int kq = -1; try { String card=""; String to=""; if(trans_type.compareTo("Chuyen Khoan")==0){ Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 39 Đồ án tốt nghiệp đại học String[] lstCard=cards.split("-"); card=lstCard[0]; to=lstCard[1]; }else{ card=cards; } DBAccess acc = new DBAccess(); //chuỗi truy vấn lấy số tiền có tài khoản String str = "select Tien from TaiKhoanATM WHERE [MaThe] = '" + card + "'"; String to_str = "select Tien from TaiKhoanATM WHERE [MaThe] = '" + to + "'"; ResultSet rs = acc.Query(str); // truy vấn, lấy liệu rs ResultSet to_rs=null; if(trans_type.compareTo("Chuyen Khoan")==0){ to_rs = acc.Query(to_str); // truy vấn, lấy liệu rs } int total_money = 0; //tổng số tiền int new_money = 0; // tổng số tiền sau giao dịch int to_total=0; int to_new=0; //lấy giá trị số tiền có tài khoản if (!rs.isBeforeFirst() || (trans_type.compareTo("Chuyen Khoan")==0 && !to_rs.isBeforeFirst())) { }else { while (rs.next()) { total_money = rs.getInt(1); } if(trans_type.compareTo("Chuyen Khoan")==0){ while (to_rs.next()) { to_total = to_rs.getInt(1); } } //Rut tien số tiền tài khoản = tiền - tiền rút if (trans_type.compareTo("Rut tien") == && (total_money 50000) >= money_value) { Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 40 Đồ án tốt nghiệp đại học new_money = total_money - money_value; } // System.out.println(total_money - money_value); if(trans_type.compareTo("Rut tien") == && total_money money_value= money_value) { new_money = total_money - money_value; to_new=to_total+money_value; } if (trans_type.compareTo("Chuyen Khoan") == && (total_money - 50000) < money_value){ return -1; } //cập nhật số tiền vào tài khoản str = "update TaiKhoanATM set [Tien] ='" + new_money + "' WHERE [MaThe] = '" + card + "'"; to_str = "update TaiKhoanATM set [Tien] ='" + to_new + "' WHERE [MaThe] = '" + to + "'"; kq = acc.Update(str); if (trans_type.compareTo("Chuyen Khoan") == 0){ kq = acc.Update(to_str); } 3.6 Giao diện đồ họa người dùng Ứng dụng ATM bao gồm phần khơng thể thiếu giao diện người dùng Hầu hết khung hình ứng dụng thiết kế đơn giản cổ điển Window Frame Java Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 41 Đồ án tốt nghiệp đại học 3.6.1 ATMManager Đăng nhập Khi chạy chương trình xuất thơng báo khởi động thành cơng, sau tắt hộp thoại thơng báo có Form mà cho phép người quản trị đăng nhập tài khoản mật để đăng nhập vào hệ thống Giao diện quản lý Tại có chức phần quản lý - Quản lý tài khoản Server + Thêm tài khoản Server + Thêm tài khoản Server + Xóa tài khoản Server - Quản lý tài khoản, thẻ ATM + Thêm tài khoản + Sửa tài khoản + Xóa tài khoản + Tìm kiếm tài khoản Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 42 Đồ án tốt nghiệp đại học + Nạp tiền vào tài khoản - Quản lý giao dịch + Tìm kiêm giao dịch - BackUp and Restore + BackUp + Restore Thêm tài khoản Server Mô tả Tên tài khoản Field Chấp nhận tên tài khoản Mật Password Field Chấp nhận mật Xác nhận mật Password Field Chấp nhận xác nhận mật Button Thêm Click để thêm tài khoản Button Cancel Click để khỏi Xóa tài khoản Server Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 43 Đồ án tốt nghiệp đại học Mô tả Tên tài khoản Table chứa tài khoản Admin truy vấn lấy từ CSDL Button xóa Chọn tài khoản cần xóa Table click vào Xóa để chọn định xóa hay khơng Thêm tài khoản ATM Sau nhập đầy đú thông tin đăng ký tài khoản Chọn vào “ Thêm” để thêm tài khoản Mô tả Nếu nhập mã thẻ sai Nếu nhập sai CMND Nếu thơng tin nhập xác Click “ Đóng” để thoát khỏi Form Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 44 Đồ án tốt nghiệp đại học Sửa tài khoản ATM Trong Form danh sách thông tin tài khoản hiển thị Table Sau chọn tài khoản cần sửa Field phía hiển thị thơng tin người quản lý sửa thơng tin ( trừ mã thẻ tiền ) sau chọn vào Button Sửa để tiến hành sửa tài khoản Xóa tài khoản ATM Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 45 Đồ án tốt nghiệp đại học Tìm kiếm tài khoản Tại cơng cụ tìm kiếm thơng minh cho phép người quản trị tìm kiếm tài khoản cúa khách hàng thơng qua nhiều thông tin khác Nạp tiền vào tài khoản Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 46 Đồ án tốt nghiệp đại học Tìm kiếm giao dịch 3.6.2 ATM Client Client Đăng nhập Giao diện Client Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 47 Đồ án tốt nghiệp đại học Rút tiền Mô tả Xác nhận để tiến hành giao dịch Giao dịch thành công Nếu số tiền rút + 50.000đ lớn số tiền tài khoản Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 48 Đồ án tốt nghiệp đại học Mô tả Nếu bạn chưa nhập số tài khoản vào Nếu chưa nhập số tiền Nếu sai số tài khoản số tiền chuyển khoản + 50.000đ lớn số tiền tài khoản chuyển Chuyển khoản thành công Số tiền tài khoản bị trừ cộng vào tài khoản chuyển Đổi mã PIN Mô tả Nếu bạn nhập mã PIN cũ khơng xác Thông báo đổi mã PIN thành công Mã PIN đổi thành mã PIN Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 49 Đồ án tốt nghiệp đại học KẾT LUẬN Kết đạt đƣợc - Tìm hiểu lập trình phân tán RMI - Xây dựng chương trình mơ ATM với số chức đặc trưng hoạt động gần giống với đời thực - Bước đầu triển khai tốn thực tế, có quy trình chặt chẽ Mặt hạn chế - Phần mềm chưa hoàn thành mốt số yêu cầu mà tự đặt +) Chưa có hệ thống BackUp and Restore thông minh +) Chưa tạo chức lệnh từ máy Server xuống máy client +) Chưa in kê… +)Vẫn tồn số lỗi nhỏ lúc vận hành 3.Hƣớng phát triển - Hoàn thiện thêm chức mà đặt - Phát triển thêm nhiều chức - Bổ sung nhiều CSDL hơn, chứa nhiều thông tin - Chỉnh sửa giao diện đẹp hơn, giống với thực tế hơn… Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 50 Đồ án tốt nghiệp đại học TÀI LIÊỤ THAM KHẢO [1] Giáo trình lập trình mạng www.tailieu.vn, www.ebook.edu.vn [2] Luận văn tìm hiểu lập trình mạng RMI www.tailieu.vn [3] LVTN Tìm hiểu RMI, áp dụng giải số toán sử lý song song phân bố Võ Văn Cường [1999] Sinh viên thực hiện: Phạm Thị Lý,Đặng Văn Nghĩa 51 ... THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC ĐỀ TÀI: NGHIÊN CỨU LẬP TRÌNH PHÂN TÁN RMI, VIẾT ỨNG DỤNG MÔ PHỎNG MÁY RÚT TIỀN TỰ ĐỘNG Sinh viên thực hiện: Phạm Thị Lý - MSV: 1051078476 Đặng... thi phân tán nhiều máy chương trình gọi chương trình phân tán việc lập trình đề tao chương trình gọi lập trình phân tán Có nhiều cơng nghiệp lập trình phân tán như: DCOM, CORBA, RMI, EJB RMI cơng... LÂP TRÌNH PHÂN TÁN VỚI JAVA RMI ( REMOTE METHOD INVOKE) Lập trình phân tán với RMI vấn đề nóng bỏng công nghiệp phần mềm ngày Để giúp bạn có kiến thức lập trình phân tán cơng nghiêp lập trình phân