Data Binding

Data Binding - Java - Programmation

Marsh Posté le 17-03-2006 à 12:01:40    

Bonjour,
 
Je m'apprête à concevoir une appli Java de présentation et de modifcation d'informations qui sont stockées dans une base de données. Cette application sera composée de plusieurs "fenêtres" (ce n'est pas une appli MDI : les fenêtres seront des JPanel) et d'un tableau. Le contenu de ces fenêtres sera très fortement lié aux informations affichées dans le tableau. Lorsque je sélectionnerai une ligne dans le tableau, toutes les fenêtres qui comportent des informations liées au tableau devront donc être mises à jour. De même, si je change une info dans une fenêtre, il faudrait mettre à jour les infos dans le tableau et vice-versa.
 
Le fait de vérifier à chaque action effectuée si les informations sont modifiées et d'actualiser le contenu de chaque fenêtre en conséquence me paraît "lourd".
 
J'ai cherché sur le net et ça parle pas mal de Data Binding. A priori, ça me permettrait de manipuler des fichiers XML plutôt que des classes ou des objets. J'ai du mal à visualiser ce que cette techinque pourrait apporter dans mon cas. En savez-vous plus? Par exemple, savez-vous s'il existe un framework permettant d'actualiser automatiquement l'affichage si une information est changée?  
 
Merci

Reply

Marsh Posté le 17-03-2006 à 12:01:40   

Reply

Marsh Posté le 17-03-2006 à 14:56:12    

Bon en fait je crois que JGoodies Binding Framework répond à mes attentes. (Pour ceux que ça intéresse...)

Reply

Marsh Posté le 17-03-2006 à 17:13:08    

Encore une info pour ceux que ça intéresse...
JGoodies Binding Framework permet de lier ce qui est affiché (GUI) à ce qui est manipulé par le système (les données). Cela évite d'utiliser des PropertyChangeListener des 2 côtés (du côté GUI et du côté données).
Si on veut ajouter de la persistance et les synchroniser avec des données en base, il faut rajouter une couche avec Hibernate.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed