Vous êtes sur la page 1sur 9

Département Génie Informatique

Java Entreprise Edition


Pr. Aimad QAZDAR
a.qazdar@uiz.ac.ma

31 octobre 2023
Java Beans
POJO
● POJO est un acronyme qui signifie plain old Java object que l'on peut traduire en
français par bon vieil objet Java.
● Un POJO est un objet Java lié à aucune autre restriction que celles forcées par la
spécification du langage Java.
● En d'autres termes, il est impératif qu'un POJO :
− n'étende pas des classes pré-spécifiées,
• comme dans : public class User extends javax.servlet.http.HttpServlet { ...
− n'implémente pas des interfaces pré-spécifiées,
• comme dans : public class User implements javax.ejb.EntityBean { ...
− ne contienne pas des annotations pré-spécifiées,
• comme dans : @javax.persistence.Entity public class Car{ ...

112
POJO
// PersonPojo.java

public class PersonPojo {


public String name;
private boolean married;
// Constructeur par défaut (Ne prenant pas d'arguments).

public PersonPojo(String name) {


// code }
public String getName() {
return this.name; }

public boolean isMarried() {


return this.married; }

public void setMarried(boolean married) {


this.married = married; }
} 113
JavaBean
● Un JavaBean est un POJO qui est sérialisable, a un constructeur sans arguments, et
permet l'accès à des propriétés utilisant des méthodes getter et setter dont les noms sont
déterminés par une convention simple.
● Les JavaBeans sont couramment appelés beans (haricots) tout simplement.
● Ils ne doivent pas être confondus avec les Entreprise Java Beans (EJB) qui permettent de
définir des composants logiciels, côté serveur, avec JEE.
● Le respect de ces conventions rend possible l'utilisation, la réutilisation, le remplacement
et la connexion de JavaBeans par des outils de développement.

114
JavaBeans
● la classe doit être « Serializable » pour pouvoir sauvegarder et restaurer l'état d'instances
de cette classe;
● la classe doit posséder un constructeur sans paramètre (constructeur par défaut);
● les attributs privés de la classe doivent être accessibles publiquement via des
méthodes accesseurs construit avec get ou set suivi du nom de l'attribut avec la
première lettre capitalisée.
− Si une classe possède une méthode getTitle qui retourne un String, on dit que le bean
possède une propriété String nommée title
− Les propriétés Boolean utilisent isXXX à la place de getXXX
● la classe ne doit pas être déclarée final.

115
JavaBeans
// PersonBean.java

public class PersonBean implements Serializable {


private String name;
private boolean married;
// Constructeur par défaut (Ne prenant pas d'arguments).

public PersonBean() { }
public String getName() { return this.name; }
public void setName(String name) {
this.name = name; }
/* Différentes sémantiques pour les booléens. (get vs is) Ici nous optons pour un préfixe is. */

public boolean isMarried() {


return this.married; }
public void setMarried(boolean married) {
this.married = married; }
}

116
JavaBean et POJO

POJO JAVA BEAN


It doesn’t have special restrictions other It is a special POJO which have some
than those forced by Java language. restrictions.
It doesn’t provide much control on
It provides complete control on members.
members.
It can implement Serializable interface. It should implement serializable interface.
Fields are accessed only by getters and
Fields can be accessed by their names.
setters.
Fields can have any visiblity. Fields have only private visiblity.
There can be a no-arg constructor. It must have a no-arg constructor.
It is used when you don’t want to give It is used when you want to provide user
restriction on your members and give your entity but only some part of your
user complete access of your entity entity.

117
JavaBeans et POJO

Table POJO or JavaBeans


mapping

118

Vous aimerez peut-être aussi