logo

POJO

POJO u Javi je kratica za Plain Old Java Object. To je običan objekt, koji nije vezan nikakvim posebnim ograničenjima. POJO datoteka ne zahtijeva nikakav poseban put klase. Povećava čitljivost i mogućnost ponovne upotrebe Java programa.

POJO su sada široko prihvaćeni zbog jednostavnog održavanja. Lako ih je čitati i pisati. POJO klasa nema nikakvu konvenciju o imenovanju svojstava i metoda. Nije vezana ni za jednu Java Okvir; bilo koji Java program ga može koristiti.

Pojam POJO uveo je god Martin Fowler (Američki programer softvera) 2000. godine dostupan je u Javi iz EJB 3.0 od strane sun microsystema.

Općenito, POJO klasa sadrži varijable i njihove dobivače i postavljače.

POJO klase slične su grahovima jer se obje koriste za definiranje objekata kako bi se povećala čitljivost i mogućnost ponovne upotrebe. Jedina razlika između njih je da Bean datoteke imaju neka ograničenja, ali POJO datoteke nemaju nikakva posebna ograničenja.

Primjer:

POJO klasa se koristi za definiranje entiteta objekta. Na primjer, možemo stvoriti POJO klasu Employee kako bismo definirali njezine objekte.

Ispod je primjer Java POJO klase:

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

Gore navedena klasa zaposlenika primjer je POJO klase zaposlenika. Ako radite na Eclipseu, možete jednostavno generirati Settere i Gettere desnim klikom na Java Program i otići na Izvor-> Generiraj dobivatelje i postavljače.

POJO

Desnom tipkom miša kliknite Java program i odaberite Generate Getters and Setters.

POJO

Sada kliknite na Generirati opcija dana na dnu prozora Generiraj. Automatski će generirati postavljače i dobivače.

isključivanje android načina rada za razvojne programere

Svojstva POJO klase

Ispod su neka svojstva POJO klase:

  • POJO klasa mora biti javna.
  • Mora imati javni zadani konstruktor.
  • Može imati konstruktor argumenata.
  • Svi objekti moraju imati neke javne Gettere i Settere za pristup vrijednostima objekta pomoću drugih Java programa.
  • Objekt u POJO klasi može imati bilo koje modifikacije pristupa kao što su privatni, javni, zaštićeni. No, sve varijable instance trebale bi biti privatne radi poboljšane sigurnosti projekta.
  • POJO klasa ne bi trebala proširivati ​​unaprijed definirane klase.
  • Ne bi trebao implementirati unaprijed određena sučelja.
  • Ne bi trebao imati nikakve unaprijed određene napomene.

Rad POJO klase

POJO klasa je objektna klasa koja enkapsulira poslovnu logiku. U MVC arhitekturi, kontroler je u interakciji s poslovnom logikom, koja kontaktira s POJO klasom za pristup podacima.

Ispod je rad POJO klase.

POJO

Kako koristiti POJO klasu u Java programu

POJO klasa stvorena je za korištenje objekata u drugim Java programima. Glavna prednost POJO klase je ta što nećemo morati svaki put kreirati objekte u drugim Java programima. Objektima jednostavno možemo pristupiti pomoću metoda get() i set().

Za pristup objektima iz POJO klase slijedite korake u nastavku:

  • Stvorite objekte klase POJO
  • Postavite vrijednosti pomoću metode set().
  • Dohvatite vrijednosti pomoću metode get().

Na primjer, stvorite datoteku klase MainClass.java unutar istog paketa i u nju napišite sljedeći kod:

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

Izlaz:

 Name: Alisha Id: A001 Salary: 200000.0 

Iz gornjeg primjera možemo vidjeti da smo pristupili svojstvima POJO klase u MainClass.java.

POJO je sličan Bean Classu, pa se ljudi često miješaju između njih; da vidimo razliku između POJO-a i Beana.

pretvori strin u int

Java Bean

Java Bean klasa je također klasa objekata koja enkapsulira nekoliko objekata u jednu datoteku (Bean Class File). Postoje neke razlike između POJO i Beana.

Java POJO i Bean ukratko:

  • Sve Bean datoteke mogu biti POJO, ali nisu sve POJO grahovi.
  • Sve Bean datoteke mogu implementirati Serializable sučelje, ali ne mogu svi POJO implementirati Serializable sučelje.
  • Oba bi svojstva trebala biti privatna kako bi imali potpunu kontrolu nad poljima.
  • Svojstva moraju imati dobivatelje i postavljače kako biste im pristupili u drugim Java programima.
  • Bean klasa je podskup POJO klase.
  • Ne postoji veliki nedostatak korištenja POJO, ali nekoliko nedostataka bi moglo biti korištenje Bean klase.
  • POJO se koristi kada želimo omogućiti puni pristup korisnicima i ograničiti naše članove. A Bean se koristi kada želimo omogućiti djelomičan pristup članovima.

POJO vs. Grah

POJO Grah
U Pojou nema posebnih ograničenja osim Java konvencija. To je posebna vrsta POJO datoteka, koje imaju neka posebna ograničenja osim Java konvencija.
Omogućuje manju kontrolu nad poljima u usporedbi s Beanom. Pruža potpunu zaštitu na poljima.
POJO datoteka može implementirati Serializable sučelje; ali, nije obavezno. Klasa Bean trebala bi implementirati Serializable sučelje.
Klasi POJO može se pristupiti korištenjem njihovih imena. Klasi Bean se može pristupiti samo korištenjem gettera i postavljača.
Polja mogu imati bilo koji od modifikatora pristupa kao što su javno, privatno, zaštićeno. Polja mogu imati samo privatni pristup.
U POJO nije potrebno imati no-arg konstruktor; može ga i ne mora imati. Mora imati konstruktor bez argumenata.
Nema nikakvih nedostataka u korištenju POJO-a Nedostatak korištenja Beana je taj što Default konstruktor i javni postavljač mogu promijeniti stanje objekta kada bi ono trebalo biti nepromjenjivo.