logo

POJO

POJO i Java står för Plain Old Java Object. Det är ett vanligt föremål, som inte är bundet av någon särskild begränsning. POJO-filen kräver ingen speciell klasssökväg. Det ökar läsbarheten och återanvändbarheten för ett Java-program.

POJO är nu allmänt accepterade på grund av deras enkla underhåll. De är lätta att läsa och skriva. En POJO-klass har ingen namnkonvention för egenskaper och metoder. Den är inte knuten till någon Java Ramverk; vilket Java-program som helst kan använda det.

Termen POJO introducerades av Martin Fowler (En amerikansk mjukvaruutvecklare) år 2000. den är tillgänglig i Java från EJB 3.0 av sun microsystem.

I allmänhet innehåller en POJO-klass variabler och deras Getters och Setters.

POJO-klasserna liknar Beans eftersom båda används för att definiera objekten för att öka läsbarheten och återanvändbarheten. Den enda skillnaden mellan dem är att Bean Files har vissa begränsningar, men POJO-filerna har inga speciella begränsningar.

Exempel:

POJO-klassen används för att definiera objektentiteterna. Till exempel kan vi skapa en Employee POJO-klass för att definiera dess objekt.

Nedan är ett exempel på Java POJO-klass:

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

Ovanstående medarbetarklass är ett exempel på en anställd POJO-klass. Om du arbetar med Eclipse kan du enkelt generera Setters och Getters genom att högerklicka på Java-programmet och navigera till Källa-> Generera Getters och Setters.

POJO

Högerklicka på Java-programmet och välj Generera Getters and Setters.

POJO

Klicka nu på Generera alternativet som finns längst ner i fönstret Generera. Det kommer att automatiskt generera sättare och getters.

strängbyggare

Egenskaper för POJO-klassen

Nedan är några egenskaper för POJO-klassen:

trunkera och ta bort skillnaden
  • POJO-klassen måste vara offentlig.
  • Den måste ha en offentlig standardkonstruktor.
  • Det kan ha argumentkonstruktorn.
  • Alla objekt måste ha några offentliga Getters och Setters för att komma åt objektvärdena av andra Java-program.
  • Objektet i POJO-klassen kan ha alla åtkomständringar som privat, offentlig, skyddad. Men alla instansvariabler bör vara privata för förbättrad säkerhet i projektet.
  • En POJO-klass bör inte utöka fördefinierade klasser.
  • Det bör inte implementera fördefinierade gränssnitt.
  • Den ska inte ha någon fördefinierad anteckning.

Arbetar i POJO-klassen

POJO-klassen är en objektklass som kapslar in affärslogiken. I en MVC-arkitektur interagerar styrenheten med affärslogiken, som kontaktar POJO-klassen för att komma åt data.

Nedan är hur POJO-klassen fungerar.

POJO

Hur man använder POJO-klassen i ett Java-program

POJO-klassen skapas för att använda objekten i andra Java-program. Den stora fördelen med POJO-klassen är att vi inte behöver skapa objekt varje gång i andra Java-program. Vi kan helt enkelt komma åt objekten genom att använda metoderna get() och set().

Följ stegen nedan för att komma åt objekten från POJO-klassen:

  • Skapa en POJO-klassobjekt
  • Ställ in värdena med metoden set().
  • Hämta värdena med metoden get().

Skapa till exempel en MainClass.java-klassfil inom samma paket och skriv följande kod i den:

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

Produktion:

 Name: Alisha Id: A001 Salary: 200000.0 

Från exemplet ovan kan vi se att vi har kommit åt POJO-klassegenskaperna i MainClass.java.

POJO liknar Bean Class, så folk blir ofta förvirrade mellan dem; låt oss se skillnaden mellan POJO och Bean.

Java Bean

Java Bean klass är också en objektklass som kapslar in flera objekt i en enda fil (Bean Class File). Det finns vissa skillnader mellan POJO och Bean.

Java POJO och Bean i ett nötskal:

  • Alla Bean-filer kan vara POJOs, men inte alla POJOs är bönor.
  • Alla Bean-filer kan implementera ett serialiserbart gränssnitt, men inte alla POJO:er kan implementera ett serialiserbart gränssnitt.
  • Båda fastigheterna bör vara privata för att ha fullständig kontroll över fält.
  • Egenskaper måste ha getters och setter för att komma åt dem i andra Java-program.
  • Bean-klassen är en undergrupp av POJO-klassen.
  • Det finns ingen större nackdel med att använda POJO, men få nackdelar kan vara att använda Bean-klassen.
  • POJO används när vi vill ge full åtkomst till användare och begränsa våra medlemmar. Och Bönan används när vi vill ge partiell tillgång till medlemmarna.

POJO vs. Böna

POJO Böna
I Pojo finns det inga speciella restriktioner förutom Java-konventioner. Det är en speciell typ av POJO-filer, som har några speciella restriktioner förutom Java-konventioner.
Det ger mindre kontroll över fälten jämfört med Bean. Det ger fullständigt skydd på fält.
POJO-filen kan implementera det serialiserbara gränssnittet; men det är inte obligatoriskt. Klassen Bean bör implementera gränssnittet Serializable.
POJO-klassen kan nås genom att använda deras namn. Bean-klassen kan endast nås genom att använda getters och seters.
Fält kan ha någon av åtkomstmodifierarna som offentlig, privat, skyddad. Fält kan bara ha privat åtkomst.
I POJO är det inte nödvändigt att ha en no-arg-konstruktor; det kanske har det eller inte. Den måste ha en no-arg konstruktor.
Det finns ingen nackdel med att använda POJO Nackdelen med att använda Bean är att standardkonstruktören och public seter kan ändra objekttillståndet när det ska vara oföränderligt.