Rumah >pembangunan bahagian belakang >tutorial php >Pembangunan back-end Java: Menggunakan Invocation Kaedah Jauh Java untuk panggilan jauh API

Pembangunan back-end Java: Menggunakan Invocation Kaedah Jauh Java untuk panggilan jauh API

WBOY
WBOYasal
2023-06-17 10:44:201167semak imbas

Java ialah bahasa pengaturcaraan berorientasikan objek peringkat tinggi dengan keserasian, keselamatan dan kestabilan platform yang baik. Dengan perkembangan teknologi Internet, semakin banyak aplikasi memerlukan panggilan jauh melalui API untuk mencapai perkongsian data dan interaksi maklumat. Java Remote Method Invocation (RMI) ialah teknologi invocation jauh berdasarkan platform Java, yang boleh merealisasikan invocation kaedah jauh antara objek Java.

Artikel ini akan memperkenalkan konsep, prinsip kerja dan penggunaan Java RMI untuk membantu pembangun back-end Java membuat panggilan jauh API yang lebih baik.

1. Konsep Java RMI

Java RMI ialah teknologi panggilan jauh berdasarkan platform Java, yang boleh merealisasikan seruan kaedah jauh antara objek Java. Ringkasnya, Java RMI membenarkan aplikasi klien memanggil kaedah objek secara tidak langsung pada pelayan jauh melalui rangkaian dalam sistem teragih dan mendapatkan hasil pulangan.

Dalam Java RMI, pelanggan dan pelayan berkomunikasi menggunakan objek Java sebagai parameter dan nilai pulangan. Objek Java ini mesti boleh melaksanakan antara muka Serializable supaya ia boleh dihantar melalui rangkaian. Rangka kerja RMI secara automatik akan menyerikan parameter, mengembalikan nilai dan objek jauh, dan kemudian menghantarnya ke pelayan jauh melalui rangkaian.

2. Prinsip Kerja Java RMI

Prinsip kerja Java RMI boleh diringkaskan secara ringkas dalam langkah berikut:

1 🎜> Pertama, anda perlu mencipta objek Java yang melaksanakan antara muka Jauh sebagai objek jauh. Objek jauh dicipta pada bahagian pelayan Pelanggan boleh mendapatkan kebenaran untuk mengakses objek jauh melalui rujukan jauh (Rujukan Jauh) dan kaedah panggilan pada objek jauh.

2. Daftar objek jauh

Daftar objek jauh ke dalam daftar RMI. Pendaftaran RMI ialah jadual pemetaan mengikat yang mengandungi nama objek jauh dan rujukan jauh Pelanggan boleh mendapatkan rujukan jauh dengan menyatakan nama. Pendaftaran RMI boleh dijalankan pada JVM tempatan atau pada JVM jauh.

3. Pelanggan mendapatkan rujukan jauh

Pelanggan perlu meminta rujukan jauh daripada pendaftaran RMI untuk mendapatkan kebenaran untuk mengakses objek jauh. Pelanggan boleh menggunakan kaedah lookup() yang disediakan oleh kelas Penamaan untuk melaksanakan langkah ini. Kaedah lookup() menerima parameter rentetan yang menentukan nama objek jauh untuk ditemui dan mengembalikan rujukan jauh.

4. Pelanggan memanggil kaedah jauh

Klien memanggil kaedah pada objek jauh melalui rujukan jauh yang diperolehi Parameter dan nilai pulangan kaedah akan dihantar ke pelayan jauh melalui rangkaian untuk pemprosesan dan mengembalikan hasilnya kepada pelanggan.

3. Cara menggunakan Java RMI

Berikut ialah pengenalan cara menggunakan Java RMI untuk membuat panggilan jauh API:

1 >

Pertama, anda perlu Tulis antara muka jauh dan mewarisi antara muka java.rmi.Remote. Antara muka mentakrifkan kaedah jauh yang perlu dilaksanakan, dan kaedah mesti mengisytiharkan bahawa mereka membuang java.rmi.RemoteException. Contohnya:

import java.rmi.Remote;
import java.rmi.RemoteException;
public interface MyRemoteInterface extends Remote {
  public String sayHello() throws RemoteException;
}

2. Tulis kelas pelaksanaan jauh

Kemudian, anda perlu menulis objek jauh yang melaksanakan antara muka jauh. Objek jauh perlu mewarisi kelas java.rmi.server.UnicastRemoteObject dan melaksanakan kaedah yang ditakrifkan dalam antara muka. Contohnya:

import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class MyRemoteObject extends UnicastRemoteObject implements MyRemoteInterface {
  public MyRemoteObject() throws RemoteException {}
  public String sayHello() throws RemoteException {
    return "Hello world!";
  }
}

3. Daftar objek jauh

Daftar objek jauh ke dalam daftar RMI supaya pelanggan boleh mendapatkan rujukan jauh. Contohnya:

import java.rmi.Naming;
import java.rmi.registry.LocateRegistry;
public class Server {
  public static void main(String[] args) throws Exception {
    LocateRegistry.createRegistry(1099); //启动RMI注册表
    Naming.rebind("MyRemoteObject", new MyRemoteObject()); //注册远程对象
    System.out.println("Server is running...");
  }
}

4. Pelanggan memanggil kaedah jauh

Pelanggan perlu mendapatkan rujukan jauh, dan kemudian memanggil kaedah pada objek jauh melalui rujukan jauh. Contohnya:

import java.rmi.Naming;
public class Client {
  public static void main(String[] args) throws Exception {
    MyRemoteInterface remote = (MyRemoteInterface) Naming.lookup("rmi://localhost/MyRemoteObject"); //获取远程引用
    String result = remote.sayHello(); //调用远程方法
    System.out.println(result);
  }
}

Artikel ini memperkenalkan secara ringkas konsep, prinsip kerja dan penggunaan Java RMI. Java RMI boleh digunakan untuk membuat panggilan kaedah jauh dengan mudah antara objek Java dan mencapai tujuan panggilan API jauh Ia adalah teknologi teragih yang sangat praktikal. Oleh itu, memahami Java RMI adalah sangat penting untuk pembangun back-end Java.

Atas ialah kandungan terperinci Pembangunan back-end Java: Menggunakan Invocation Kaedah Jauh Java untuk panggilan jauh API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn