1. Trang chủ
  2. » Công Nghệ Thông Tin

Báo cáo Java rmi và demo

16 12 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo cáo Java RMI và Demo
Tác giả Lê Hồng Danh, Trịnh Hữu Phương
Người hướng dẫn PSG.TS.Hồ Bảo Quốc
Trường học Trường Đại Học Công Nghệ Thông Tin - Đại Học Quốc Gia TP.HCM
Chuyên ngành Kỹ thuật phần mềm
Thể loại Báo cáo
Năm xuất bản 2023
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 16
Dung lượng 1,04 MB
File đính kèm Demo Java RMI.rar (4 KB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Java RMI (Remote Method Invocation) – là một kỹ thuật cho phép người lập trình gọi các phương thức từ xa – là cách giao tiếp của các đối tượng trong Java ở các máy khác nhau có thể gọi lẫn nhau. Để giải quyết một số vấn đề trong việc truyền thông giữa ClientServer. RMI không gọi trực tiếp mà thông qua lớp trung gian. Lớp này tồn tại ở cả hai phía Client và Server. Lớp ở máy Client gọi là Stubs Lớp ở máy Server gọi là Skeletons.

Trang 1

JAVA RMI

GVHD:

PSG.TS.HỒ BẢO QUỐC

HV:

LÊ HỒNG DANH – 16C12005 TRỊNH HỮU PHƯƠNG - 1511021

Trang 2

Giới thiệu Java RMI

Thông thường các chương trình của chúng ta được viết

dưới dạng thủ tục hoặc hàm và việc các hàm gọi lẫn nhau,

truyền tham số hay kết quả cho nhau chỉ xảy ra ở máy cục

bộ

Java RMI (Remote Method Invocation) – là một kỹ thuật

cho phép người lập trình gọi các phương thức từ xa – là cách

giao tiếp của các đối tượng trong Java ở các máy khác nhau

Trang 3

Giới thiệu Java RMI

Để giải quyết một số vấn đề trong việc truyền thông giữa

Client/Server RMI không gọi trực tiếp mà thông qua lớp

trung gian Lớp này tồn tại ở cả hai phía Client và Server

◦Lớp ở máy Client gọi là Stubs

◦Lớp ở máy Server gọi là Skeletons

Trang 4

Đặc tính của Java RMI

 RMI là mô hình đối tượng phân tán của Java, nó giúp cho

việc truyền thông giữa các đối tượng phân tán được dễ dàng

hơn.

 RMI là API bậc cao được xây dựng dựa trên lập trình Socket.

 RMI không những cho phép chúng ta truyền dữ liệu giữa các

đối tượng trên các hệ thống máy tính khác nhau, mà còn triệu

gọi các phương thức trong các đối tượng ở xa (Remote Object).

Trang 5

Đặc tính của Java RMI

Việc truyền dữ liệu giữa các máy khác nhau được xử lý

một cách trong suốt bởi máy ảo Java (Java virtual machine)

Tương tự như mô hình Client/Server, RMI vẫn duy trì khái

niệm của Client và Server, tuy nhiên cách tiếp cận của RMI

linh hoạt hơn, mềm dẻo hơn so với mô hình Client/Server

RMI cung cấp cơ chế callbacks, nó cho phép Server triệu

gọi các phương thức ở Client

Trang 6

Kiến trúc cơ bản của Java RMI

Trang 7

Kiến trúc cơ bản của Java RMI

Remote interface: được kế thừa từ java.rmi.remote Nó

khai báo tất cả các phương thức mà Client có thể triệu gọi

Tất cả các phương thức trong interface này nên có phần xử lý

ngoại lệ (throw RemoteException)

Remote implementation: Được thực thi từ Remote

interface và mở rộng từ UnicastRemoteObject Triển khai các

phương thức được khai báo trong Interface tại đây Nó là một

Remote Object thực sự Phát sinh hai lớp trung gian Stub và

Skeletons

Trang 8

Kiến trúc cơ bản của Java RMI

Server class bao gồm:

◦RMI registry: Bộ đăng kí này sẽ đăng kí một Remote

object với Naming Registry Giúp các Remote object được

chấp nhận khi gọi các phương thức từ xa

◦Các class thực thi trên server

Client class: Truy vấn trên tên Remote object trên RMI

registry, thông qua stub để gọi các phương thức trên server

Trang 9

Kiến trúc cơ bản của Java RMI

Trang 10

Kiến trúc cơ bản của Java RMI

Stub là một đối tượng hoạt động như là một cổng ở phía client

Tất cả các yêu cầu gửi đi được chuyển qua nó Khi gọi phương

thức trên đối tượng Stub, nó thực hiện các tác vụ sau:

1 Khởi tạo kết nối với máy ảo từ xa

2 Viết và truyền tham số cho máy ảo từ xa

3 Đợi kết quả

4 Đọc giá trị trả về hoặc ngoại lệ

Trang 11

Kiến trúc cơ bản của Java RMI

Skeleton là một đối tượng hoạt động như là một cổng ở

phía server Tất cả các yêu cầu đến được chuyển qua nó Khi

skeleton nhận được yêu cầu đến, nó sẽ thực hiện các nhiệm

vụ sau:

1 Đọc các tham số cho phương thức từ xa

2 Gọi phương thức trên đối tượng từ xa thực tế

3 Viết và truyền kết quả cho nơi gọi

Trang 12

Con đường kích hoạt phương thức ở xa

Trang 13

Cơ chế vận hành

Trang 14

Cơ chế vận hành

Trang 15

Ví dụ

Xây dựng một phương thức int add(int a, int b) cho phép

gọi từ xa

 Kích hoạt phương thức đó: sẽ trả về kết quả là giá trị của

phép cộng cho Client gọi nó

Trang 16

Cảm ơn Thầy và các bạn lắng nghe!

Ngày đăng: 11/06/2023, 17:41

TỪ KHÓA LIÊN QUAN

w