Vous êtes sur la page 1sur 10

Les Composants Java Beans

Elabor par :

Page 1

Introduction:
Lorsque l'on parle de composants, il s'agit de simples fichiers, contenant gnralement du code compil, regroupe un certain nombre de fonctionnalits qui peuvent tre appeles depuis un programme externe, cens fournir un service bien prcis, Enfin, un composant doit tre rutilisable, cest--dire qu'il ne doit pas simplement servir dans le cadre du projet durant lequel il a t dvelopp. Les java beans sont des composants rutilisables introduits par le Java Development Kit (JDK )1.1. De nombreuses fonctionnalits de ce JDK lui ont t ajoutes pour dvelopper des caractristiques de ces composants. Les java beans sont couramment appels simplement beans.

Page 2

Que cest que ce Beans:


Des composants rutilisables sont des objets autonomes qui doivent pouvoir tre facilement assembls entres eux pour crer un programme. Microsoft propose la technologie ActiveX pour dfinir des composants mais celle ci est spcifiquement destine aux plateformes Windows. Les Java beans proposs par Sun reposent bien sre sur java et de fait en possdent toutes les caractristiques : indpendance de la plate-forme, taille rduite du composant, ... La technologie java beans propose de simplifier et faciliter la cration et l'utilisation de composants. Les java beans possdent plusieurs caractristiques :
Page 3

La persistance : elle permet grce au mcanisme de srialisation de sauvegarder l'tat d'un bean pour le restaurer ainsi si on assemble plusieurs beans pour former une application, on peut la sauvegarder.

La communication grce des vnements qui utilise le modle des couteurs introduit par java 1.1
L'introspection : ce mcanisme permet de dcouvrir de faon dynamique l'ensemble des lments qui compose le bean (attributs, mthodes et vnements) sans avoir le code source. La possibilit de paramtrer le composant : les donnes du paramtrage sont conserves dans des proprits.
Page 4

Ainsi, les beans sont des classes java qui doivent respecter un certains nombre de rgles : Ils doivent possder un constructeur sans paramtre. Celui ci devra initialiser l'tat du bean avec des valeurs par dfauts. Ils peuvent dfinir des proprits : celles ci sont identifies par des mthodes dont le nom et la signature sont normaliss.

Ils devraient implmenter l'interface serialisable* : ceci est obligatoire pour les beans qui possdent une partie graphique pour permettre la sauvegarde de leur tat.
* Serialisable: pour pouvoir sauvegarder et restaurer l'tat d'instances de cette classe
Page 5

Proprits, mthodes et vnements:


Les proprits contiennent des donnes qui grent l'tat du composant : ils peuvent tre de type primitif ou tre un objet. Il existe quatre types de proprits : Les proprits simples. Les proprits indexes.

Les proprits lies.


Les proprits lies avec contraintes.

Page 6

Les mthodes:
Toutes les mthodes publiques sont visibles de l'extrieur et peuvent donc tre appeles.

Les vnements:
Les beans utilisent les vnements dfinis dans le modle par dlgation introduit par le J.D.K. 1.1 pour dialoguer. Par respect de ce modle, le bean est la source et les autres composants qui souhaitent tre informs sont nomms Listeners ou couteurs et doivent s'enregistrer auprs du bean qui maintient la liste des composants enregistrs. Il est ncessaire de dfinir les mthodes qui vont permettre de grer la liste des couteurs dsirant recevoir l'vnement. Il faut dfinir deux mthodes :

Page 7

public void addXXXListener( XXXListener li) pour enregistrer l'couteur li public void removeXXXListener (XXXListener li) pour enlever l'couteur li de la liste

L'objet de type XXXListener doit obligatoirement implmenter l'interface java.util.EventListener et son nom doit terminer par Listener .

Page 8

Lintrospection:
L'introspection est un mcanisme qui permet de dterminer de faon dynamique les caractristiques d'une classe et donc d'un bean. Les caractristiques les plus importantes sont les proprits, les mthodes et les vnements. Le principe de l'introspection permet Sun d'viter de rajouter des lments au langage pour dfinir ces caractristiques. La classe Introspector utilise deux techniques pour retrouver ces informations :

Un objet de type BeanInfo*, si il y en a un dfini par les dveloppeurs du bean Les mcanismes fournis par l'API reflexion pour extraire les entits qui respectent leur modle (design pattern) respectif.
* BeanInfo contient des informations sur un bean et possde plusieurs mthodes pour les obtenir.

Page 9

Conclusion:
Les beans sont prvus pour pouvoir interagir avec d'autres beans au point de pouvoir dvelopper une application simplement en assemblant des beans avec un outil graphique ddi.

Page 10