Création de l'application serveur (tutoriel TObjects et DataSnap)
Remonter à Tutoriel : Passage de PODO (Plain Old Delphi Objects) avec DataSnap
Création de l'application serveur
Pour construire l'application serveur, suivez les étapes ci-après :
1. Ouvrez RAD Studio.
2. Sélectionnez Fichier > Nouveau > Autre.
3. Développez Projets C++Builder ou Projets Delphi dans la colonne de gauche.
4. Depuis le noeud Serveur DataSnap, sélectionnez Serveur DataSnap et appuyez sur OK.
5. Spécifiez le type de l'application :
-
- Sélectionnez Application Fiches et appuyez sur Suivant.
- Sélectionnez Application FireMonkey et appuyez sur Suivant.
- Conservez les valeurs par défaut afin d'utiliser Protocole TCP/IP.
- Décochez la case Méthodes exemple et appuyez sur Suivant.
- Appuyez sur Tester le port pour vérifier si le port 211 est ouvert et appuyez sur Suivant.
- Conservez le TComponent sélectionné par défaut et appuyez sur Terminer.
- Enregistrez votre projet en appuyant sur le bouton Tout enregistrer de la barre de menus, et enregistrez tous les éléments dans le même dossier.
Remarque : Pour un meilleur usage, nommez la première unité FormServerUnit et le projet PODOServer.
6. Sélectionnez :
-
- Pour Delphi : Fichier > Nouveau > Unité - Delphi
- Pour C++ : Fichier > Nouveau > Unité - C++Builder
7. Enregistrez-la sous le nom SharedStuffUnit.
8. Dans l'unité SharedStuffUnit, déclarez une classe TPerson :
Delphi :
TPerson = class (TObject)
public
property Lastname: string;
property Firstname: string;
constructor Create(ALast, AFirst: string);
function ToString: string; override;
end;
C++Builder :
class TPerson: public TObject {
public:
UnicodeString Lastname;
UnicodeString Firstname;
TPerson(String ALast, String AFirst);
__fastcall UnicodeString ToString(void);
};
9. Delphi : Générez les accesseurs en lecture et les accesseurs en écriture en utilisant la combinaison de touches Ctrl + Maj + C.
TPerson = class (TObject)
private
FLastName: string;
FFirstname: string;
procedure SetFirstname(const Value: string);
procedure SetLastName(const Value: string);
public
property LastName: string read FLastName write SetLastName;
property Firstname: string read FFirstname write SetFirstname;
constructor Create(ALast, AFirst: string);
function ToString: string; override;
end;
10. Implémentez le constructeur pour la classe TPerson depuis l'unité SharedStuffUnit :
Delphi :
constructor TPerson.Create(ALast, AFirst: string);
begin
FLastName := ALast;
FFirstName := AFirst;
end;
C++Builder :
TPerson::TPerson(String ALast, String AFirst)
{
Lastname = ALast;
Firstname = AFirst;
}
11. Dans l'unité SharedStuffUnit, redéfinissez la fonction ToString :
Delphi :
function TPerson.ToString
begin
Result := Firstname + ' ' + Lastname;
end;
C++Builder :
UnicodeString __fastcall TPerson::ToString(void)
{
return Firstname + " " + Lastname;
}
-
-
- ToString est une fonction héritée du TObject, elle doit donc être redéfinie.
-
12. Dans l'unité ServerMethodsUnit1, sélectionnez Fichier > Utiliser l'unité..., ajoutez l'unité SharedStuffUnit et appuyez sur OK.
13. Dans la zone public de l'unité ServerMethodsUnit, déclarez la fonction GetPerson :
Delphi :
function GetPerson(aFirst, aLast: string): TPerson;
C++Builder :
TPerson __fastcall TPerson::GetPerson(String ALast, String AFirst);
-
-
- GetPerson est utilisée pour créer et renvoyer une nouvelle instance d'une classe TPerson, avec les FirstName et LastName donnés.
-
14. Définissez le résultat de la fonction :
Delphi :
function TServerMethods1.GetPerson(aFirst, aLast: string): TPerson;
begin
Result := TPerson.Create(ALast, AFirst);
end;
C++Builder :
TPerson *TServerMethods1::GetPerson(String ALast, String AFirst)
{
TPerson *p;
p = new TPerson(ALast, AFirst);
return p;
}
15. Exécuter > Exécuter ou appuyez sur F9 pour exécuter le serveur.
16. Minimisez la fenêtre du serveur et allez à l'étape suivante pour créer l'application client.