logo

POJO

POJO in Java sta per Plain Old Java Object. È un oggetto ordinario, che non è vincolato da alcuna restrizione speciale. Il file POJO non richiede alcun percorso di classe speciale. Aumenta la leggibilità e la riutilizzabilità di un programma Java.

I POJO sono ora ampiamente accettati grazie alla loro facile manutenzione. Sono facili da leggere e scrivere. Una classe POJO non ha alcuna convenzione di denominazione per proprietà e metodi. Non è legato a nessuno Giava Struttura; qualsiasi programma Java può usarlo.

Il termine POJO è stato introdotto da Martin Fowler (Uno sviluppatore di software americano) nel 2000. È disponibile in Java da EJB 3.0 del microsistema Sun.

Generalmente, una classe POJO contiene variabili e i relativi Getter e Setter.

Le classi POJO sono simili a Beans poiché entrambe vengono utilizzate per definire gli oggetti per aumentare la leggibilità e la riutilizzabilità. L'unica differenza tra loro è che i file Bean hanno alcune restrizioni ma i file POJO non hanno restrizioni speciali.

Esempio:

La classe POJO viene utilizzata per definire le entità dell'oggetto. Ad esempio, possiamo creare una classe Employee POJO per definirne gli oggetti.

Di seguito è riportato un esempio di classe POJO Java:

Dipendente.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 Employee sopra è un esempio di classe POJO Employee. Se stai lavorando su Eclipse, puoi generare facilmente Setter e Getter facendo clic con il pulsante destro del mouse sul programma Java e accedendo a Sorgente-> Genera getter e setter.

POJO

Fare clic con il tasto destro sul programma Java e selezionare Genera getter e setter.

POJO

Ora, fai clic su creare opzione fornita nella parte inferiore della finestra Genera. Genererà automaticamente setter e getter.

strumento di guarigione gimp

Proprietà della classe POJO

Di seguito sono riportate alcune proprietà della classe POJO:

  • La classe POJO deve essere pubblica.
  • Deve avere un costruttore predefinito pubblico.
  • Potrebbe avere gli argomenti costruttore.
  • Tutti gli oggetti devono avere alcuni Getter e Setter pubblici per accedere ai valori dell'oggetto da altri programmi Java.
  • L'oggetto nella classe POJO può avere qualsiasi modifica di accesso come privato, pubblico, protetto. Tuttavia, tutte le variabili dell'istanza dovrebbero essere private per una maggiore sicurezza del progetto.
  • Una classe POJO non dovrebbe estendere classi predefinite.
  • Non dovrebbe implementare interfacce prespecificate.
  • Non dovrebbe avere alcuna annotazione prespecificata.

Funzionamento della classe POJO

La classe POJO è una classe di oggetti che incapsula la logica aziendale. In un'architettura MVC, il Controller interagisce con la logica aziendale, che contatta la classe POJO per accedere ai dati.

Di seguito è riportato il funzionamento della classe POJO.

POJO

Come utilizzare la classe POJO in un programma Java

La classe POJO viene creata per utilizzare gli oggetti in altri programmi Java. Il vantaggio principale della classe POJO è che non dovremo creare oggetti ogni volta in altri programmi Java. Semplicemente possiamo accedere agli oggetti utilizzando i metodi get() e set().

Per accedere agli oggetti dalla classe POJO, seguire i passaggi seguenti:

  • Creare oggetti di classe POJO
  • Imposta i valori utilizzando il metodo set()
  • Ottieni i valori utilizzando il metodo get()

Ad esempio, crea un file di classe MainClass.java all'interno dello stesso pacchetto e scrivi al suo interno il seguente codice:

includere la programmazione in c

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()); } } 

Produzione:

 Name: Alisha Id: A001 Salary: 200000.0 

Dall'esempio precedente, possiamo vedere che abbiamo avuto accesso alle proprietà della classe POJO in MainClass.java.

POJO è simile a Bean Class, quindi le persone spesso si confondono tra loro; vediamo la differenza tra POJO e Bean.

Fagiolo di Giava

Classe Java Bean è anche una classe di oggetti che incapsula diversi oggetti in un unico file ( Bean Class File). Ci sono alcune differenze tra POJO e Bean.

Java POJO e Bean in breve:

  • Tutti i file Bean possono essere POJO, ma non tutti i POJO sono bean.
  • Tutti i file Bean possono implementare un'interfaccia Serializable ma non tutti i POJO possono implementare un'interfaccia Serializable.
  • Entrambe le proprietà dovrebbero essere private per avere il controllo completo dei campi.
  • Le proprietà devono avere i getter e il setter per accedervi in ​​altri programmi Java.
  • La classe Bean è un sottoinsieme della classe POJO.
  • Non vi è alcuno svantaggio importante nell'utilizzo del POJO, ma alcuni svantaggi potrebbero derivare dall'utilizzo della classe Bean.
  • Il POJO viene utilizzato quando vogliamo fornire pieno accesso agli utenti e limitare i nostri membri. Inoltre, il Bean viene utilizzato quando vogliamo fornire un accesso parziale ai membri.

POJO vs. Fagiolo

POJO Fagiolo
In Pojo non ci sono restrizioni speciali oltre alle convenzioni Java. È un tipo speciale di file POJO, che presenta alcune restrizioni speciali diverse dalle convenzioni Java.
Fornisce meno controllo sui campi rispetto a Bean. Fornisce una protezione completa sui campi.
Il file POJO può implementare l'interfaccia Serializable; ma non è obbligatorio. La classe Bean dovrebbe implementare l'interfaccia Serializable.
È possibile accedere alla classe POJO utilizzando i loro nomi. È possibile accedere alla classe Bean solo utilizzando getter e setter.
I campi possono avere uno qualsiasi dei modificatori di accesso come pubblico, privato, protetto. I campi possono avere solo accesso privato.
In POJO non è necessario avere un costruttore no-arg; può averlo o meno. Deve avere un costruttore no-arg.
Non c'è alcuno svantaggio nell'utilizzare il POJO Lo svantaggio dell'utilizzo del Bean è che il costruttore Default e il setter pubblico possono modificare lo stato dell'oggetto quando dovrebbe essere immutabile.