logo

POJO

POJO en Java significa Plain Old Java Object. És un objecte normal, que no està subjecte a cap restricció especial. El fitxer POJO no requereix cap classpath especial. Augmenta la llegibilitat i la reutilització d'un programa Java.

Els POJO són ​​ara àmpliament acceptats a causa del seu fàcil manteniment. Són fàcils de llegir i escriure. Una classe POJO no té cap convenció de nomenclatura per a propietats i mètodes. No està lligat a cap Java Marc; qualsevol programa Java pot utilitzar-lo.

El terme POJO va ser introduït per Martin Fowler (Un desenvolupador de programari nord-americà) l'any 2000. està disponible en Java des del microsistema EJB 3.0 by sun.

Generalment, una classe POJO conté variables i els seus Getters i Setters.

Les classes POJO són ​​similars a Beans, ja que ambdues s'utilitzen per definir els objectes per augmentar la llegibilitat i la reutilització. L'única diferència entre ells és que els fitxers Bean tenen algunes restriccions, però els fitxers POJO no tenen cap restricció especial.

Exemple:

La classe POJO s'utilitza per definir les entitats de l'objecte. Per exemple, podem crear una classe Employee POJO per definir els seus objectes.

A continuació es mostra un exemple de classe Java POJO:

Employee.java:

 // POJO class Exmaple package Jtp.PojoDemo; public class Employee { private String name; private String id; private double sal; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public double getSal() { return sal; } public void setSal(double sal) { this.sal = sal; } } 

La classe d'empleats anterior és un exemple de classe POJO d'empleats. Si esteu treballant en Eclipse, podeu generar fàcilment Setters i Getters fent clic amb el botó dret al programa Java i navegar a Font-> Genera Getters i Setters.

POJO

Feu clic amb el botó dret al programa Java i seleccioneu Generar Getters i Setters.

POJO

Ara, feu clic a Generar opció donada a la part inferior de la finestra Genera. Generarà automàticament setters i getters.

conjunt vs mapa

Propietats de la classe POJO

A continuació es mostren algunes propietats de la classe POJO:

nova línia python
  • La classe POJO ha de ser pública.
  • Ha de tenir un constructor públic predeterminat.
  • Pot tenir el constructor d'arguments.
  • Tots els objectes han de tenir alguns Getters i Setters públics per accedir als valors dels objectes mitjançant altres programes Java.
  • L'objecte de la classe POJO pot tenir qualsevol modificació d'accés, com ara privat, públic, protegit. Però, totes les variables d'instància haurien de ser privades per millorar la seguretat del projecte.
  • Una classe POJO no hauria d'estendre les classes predefinides.
  • No hauria d'implementar interfícies preespecificades.
  • No hauria de tenir cap anotació prèviament especificada.

Treball de la classe POJO

La classe POJO és una classe d'objectes que encapsula la lògica empresarial. En una arquitectura MVC, el controlador interactua amb la lògica empresarial, que es posa en contacte amb la classe POJO per accedir a les dades.

A continuació es mostra el funcionament de la classe de POJO.

POJO

Com utilitzar la classe POJO en un programa Java

La classe POJO es crea per utilitzar els objectes en altres programes Java. El principal avantatge de la classe POJO és que no haurem de crear objectes cada vegada en altres programes Java. Simplement podem accedir als objectes utilitzant els mètodes get() i set().

Per accedir als objectes de la classe POJO, seguiu els passos següents:

  • Creeu objectes de classe POJO
  • Establiu els valors mitjançant el mètode set().
  • Obteniu els valors mitjançant el mètode get().

Per exemple, creeu un fitxer de classe MainClass.java dins del mateix paquet i escriviu-hi el codi següent:

MainClass.java:

 //Using POJO class objects in MainClass Java program package Jtp.PojoDemo; public class MainClass { public static void main(String[] args) { // Create an Employee class object Employee obj= new Employee(); obj.setName('Alisha'); // Setting the values using the set() method obj.setId('A001'); obj.setSal(200000); System.out.println('Name: '+ obj.getName()); //Getting the values using the get() method System.out.println('Id: ' + obj.getId()); System.out.println('Salary: ' +obj.getSal()); } } 

Sortida:

 Name: Alisha Id: A001 Salary: 200000.0 

A partir de l'exemple anterior, podem veure que hem accedit a les propietats de la classe POJO a MainClass.java.

POJO és semblant a Bean Class, de manera que la gent sovint es confon entre ells; anem a veure la diferència entre el POJO i el Bean.

Java Bean

Classe de Java Bean també és una classe d'objectes que encapsula diversos objectes en un sol fitxer (Fitxer de classe Bean). Hi ha algunes diferències entre POJO i Bean.

Java POJO i Bean en poques paraules:

  • Tots els fitxers Bean poden ser POJO, però no tots els POJO són ​​beans.
  • Tots els fitxers Bean poden implementar una interfície serialitzable, però no tots els POJO poden implementar una interfície serialitzable.
  • Les dues propietats han de ser privades per tenir un control complet dels camps.
  • Les propietats han de tenir els getters i el setter per accedir-hi en altres programes Java.
  • La classe Bean és un subconjunt de la classe POJO.
  • No hi ha cap desavantatge important d'utilitzar el POJO, però alguns desavantatges poden ser utilitzar la classe Bean.
  • El POJO s'utilitza quan volem proporcionar accés complet als usuaris i restringir els nostres membres. I, el Bean s'utilitza quan volem proporcionar accés parcial als membres.

POJO Vs. Mongeta

POJO Mongeta
A Pojo, no hi ha restriccions especials que no siguin les convencions de Java. És un tipus especial de fitxers POJO, que tenen algunes restriccions especials diferents de les convencions de Java.
Proporciona menys control sobre els camps en comparació amb Bean. Proporciona una protecció completa als camps.
El fitxer POJO pot implementar la interfície Serializable; però, no és obligatori. La classe Bean hauria d'implementar la interfície Serializable.
Es pot accedir a la classe POJO utilitzant els seus noms. Només es pot accedir a la classe Bean mitjançant els getters i setters.
Els camps poden tenir qualsevol dels modificadors d'accés, com ara públic, privat, protegit. Els camps només poden tenir accés privat.
A POJO, no és necessari tenir un constructor sense arguments; pot tenir-lo o no. Ha de tenir un constructor sense arguments.
No hi ha cap desavantatge a utilitzar el POJO El desavantatge d'utilitzar el Bean és que el constructor predeterminat i el configurador públic poden canviar l'estat de l'objecte quan hauria de ser immutable.