Javabean c'est quoi Help me

Résolu/Fermé
mikromatik Messages postés 18 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 1 avril 2010 - 26 août 2008 à 07:34
 mikromatik - 8 sept. 2008 à 08:49
Bonjour,

Malheureusement je suis encore débutant en java, j'aimerai comprendre comment demander à un utilisateur de saisir 2 nombres et de les additionner ensuite en utilisant beans?? En faite c'est une page en JSP donc boujour la galère!

Eclairé moi s'il vous plait!!!!

Le plus tôt sera le mieux et merci d'avance

1 réponse

Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 328
26 août 2008 à 21:27
Bonsoir,
Je vais pas te détailler toute ton architecture, mais répondre grossièrement à ta question (le mieux étant de lire des tutos et de cours sur les technologies que tu utilises, comme Slik te l'a déjà conseillé).

Un javabean, c'est une classe java qui va servir à représenter des objets d'un type précis, et éventuellement des méthodes intrinsèques au fonctionnement de l'objet. En pratique, ton bean doit au moins :
- avoir un constructeur par défaut
- avoir des attributs d'instances (sinon ça ne représente pas de données, donc ça ne sert pas à grand chose pour un bean)
- avoir des getters et des setters pour tous tes attributs
- être sérialisable

Cette définition peut être légèrement modulée (les getters/setters seront optionnels si tes attributs ne sont pas tous private) mais c'est pas forcément conseillé vu que beaucoup de frameworks exigent des getters/setters pour modifier eux-même ces données. En ce qui concerne le constructeur par défaut, java l'ajoute automatiquement si tu n'as pas de constructeur explicite, mais par précaution c'est toujours bien de l'écrire.

Pour ton problème, en supposant que tu aies une architecture MVC classique, tu dois faire :
-ta jsp comportant un formulaire avec deux champs, et un bouton submit
- une servlet qui va récupérer les paramètres de la request (comportant notamment les valeurs de tes deux champs), et va faire appel à ta partie Métier pour faire la somme
- éventuellement une persistance des données (en général en JEE ça se fait ;))
- éventuellement un retour de ta partie métier vers la servlet, puis vers une redirection

Bien cordialement,
0
mikromatik Messages postés 18 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 1 avril 2010
27 août 2008 à 07:23
Bonjour Marco!

Sans te vexé, je pense que je n'a pas bien assimilé l'explication que tu m'as donné, est-ce que tu peux être un peu plus claire avec tes explications car je suis un peu perdu avec tous ces termes (getters/setters MVC ) n'oublie pas que je suis débutant???

Bien Cordialement

Merci d'avance
0
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 328 > mikromatik Messages postés 18 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 1 avril 2010
27 août 2008 à 10:06
Salut Micromaitk,
Ne t'inquiète pas, je ne suis pas vexé :)

Pour le bean, on va prendre un exemple : une classe Personne minimale : une personne est un objet comportant deux attributs : un nom et un prénom.
Pour cet exemple, voici un bean qui pourrait correspondre :
class Personne implements Serializable {

 private String nom;
 private String prenom;

 public Personne() {
 }

 public Personne(String nom, String prenom) {
  this.nom = nom;
  this.prenom = prenom;
 }

//les getters
 public String getNom() {
  return nom;
 }

 public String getPrenom() {
  return prenom;
 }

//les setters
 public void setNom(String nom) {
  this.nom = nom;
 }

 public void setPrenom(String prenom) {
  this.prenom = prenom;
 }
}


Les getters et les setters sont des méthodes publiques qui permettent respectivement d'accéder et de modifier les attributs de ta classe (qui sont private, donc pas accessibles/modifiables depuis des autres classes).

En ce qui concerne MVC (Modèle-Vue-Contrôleur), c'est un design pattern appliqué pour les applications graphiques (et notament pour les applications web), qui consiste à séparer clairement le code des couches (amélioration de la maintenance et de la qualité du code) :
- la couche vue n'est pas sensés modifier des données fonctionnelle, mais uniquement afficher des informations retournées par la couche contrôleur
- la couche contrôleur fait la correspondance entre les deux autres couches : elle récupère des informations de la couche vue (par exemple un utilisateur qui envoie un formulaire, clique sur un bouton...), et fait appel à la couche métier pour traiter les informations
- la couche métier concerne le fonctionnel de ton application. Tes beans en font notamment partie. En général, elle peut être utilisée pour extraire des données d'une base de données, éventuellement les mapper (stocker) dans des javabeans, effectuer des traitements sur ces objets... avant de les retourner (si besoin) au contrôleur qui décide de ce qu'il doit faire (une redirection vers une autre page pour afficher les données reçues généralement).

J'espère que ça t'éclaire un peu.

Cordialement,
0
mikromatik > Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009
8 sept. 2008 à 08:49
Merci beaucoup pour ton aide Marco la baraque et désolé pour le retard, j'ai eu un petit souci d'internet.

Cordialement
0