Examen RMI2021 Corrigé

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 3

Baye serigne seck

Questions de cours :
1) Quel est le rôle de la RRL de RMI ?
La RRL de RMI a pour rôle la localisation des objets distant
2) Quel est l’intérêt d’un Stub en Java RMI ?
Il permet la communication entre le client et le serveur en transmettant les données reçus a
la couche de référence distante laquelle interagit avec la couche transport.
3) Comment un Stub est-il généré en RMI dans le JDK 1.5 ?
Automatiquement par la JVM
Exercice

Donner l’interface distante ICompte


package compteRMIexam;

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

public interface Icompte extends Remote {

public int consulter(int id_compte) throws RemoteException;

public int deposer(double montant,int id_compte) throws


RemoteException;

public int retirer(double montant,int id_compte)throws RemoteException;

public void creerCompte(String nom,String prenom,int id_compte,int solde) throws


RemoteException;

}
2) Définir la classe de l’Objet distant ICompteImpl
package compteRMIexam;

import java.io.Serializable;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import java.util.HashMap;

public class IcompteImpl extends UnicastRemoteObject implements Icompte,Serializable {

HashMap<Integer,Compte> table=new HashMap();


private double solde;
private String nom;
private String prenom;
private int id_cpmpte;

protected IcompteImpl() throws RemoteException {


super();

@Override
public void creerCompte(String nom, String prenom, int id_compte, int solde)
throws RemoteException {

Compte c=new Compte(solde,prenom,nom,id_compte);


table.put(new Integer(id_compte),c);
}

@Override
public int consulter(int id_compte) throws RemoteException {

Compte x=table.get(id_compte);
return x.consulter();

@Override
public int deposer(double montant, int id_compte) throws RemoteException {
Compte x=table.get(id_compte);

return x.deposer(montant);
}

@Override
public int retirer(double montant, int id_compte) throws RemoteException {
Compte x=table.get(id_compte);

return x.retirer(montant);
}

}
La classe Compte est définie comme suit
package compteRMIexam;

public class Compte {


private int numero;
private String nom;
private String prenom;
private int solde;
public Compte(int numero, String nom, String prenom, int solde) {
super();
this.numero = numero;
this.nom = nom;
this.prenom = prenom;
this.solde = solde;
}

public double consulter() {

return solde;
}

public double deposer(double montant) {


solde+=montant;
return montant;
}

public double retirer(double montant) {


if(solde>=montant) {
solde-=montant;
}
return montant ;
}

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy