POJO Java reiškia paprastą seną Java objektą. Tai paprastas objektas, kuriam netaikomi jokie specialūs apribojimai. POJO failui nereikia jokio specialaus klasės kelio. Tai padidina „Java“ programos skaitomumą ir pakartotinį naudojimą.
POJO dabar plačiai pripažįstami dėl lengvos priežiūros. Juos lengva skaityti ir rašyti. POJO klasė neturi jokių savybių ir metodų įvardijimo konvencijos. Jis nėra susietas su niekuo Java Sistema; bet kuri Java programa gali jį naudoti.
POJO terminą įvedė Martinas Fowleris (Amerikietiškas programinės įrangos kūrėjas) 2000 m. ji yra prieinama Java kalba iš EJB 3.0 by sun microsystem.
Paprastai POJO klasėje yra kintamieji ir jų Getteriai bei Seteriai.
POJO klasės yra panašios į Beans, nes abi yra naudojamos objektams apibrėžti, kad būtų padidintas skaitymas ir pakartotinis naudojimas. Vienintelis skirtumas tarp jų yra tas, kad „Bean Files“ turi tam tikrus apribojimus, tačiau POJO failai neturi jokių specialių apribojimų.
Pavyzdys:
POJO klasė naudojama objektų objektams apibrėžti. Pavyzdžiui, galime sukurti Darbuotojo POJO klasę, kad apibrėžtume jos objektus.
Žemiau pateikiamas Java POJO klasės pavyzdys:
Darbuotojas.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; } }
Aukščiau pateikta darbuotojų klasė yra darbuotojo POJO klasės pavyzdys. Jei dirbate su „Eclipse“, galite lengvai sukurti „Setterius“ ir „Getters“ dešiniuoju pelės mygtuku spustelėkite „Java“ programą ir eikite į Šaltinis-> Generuoti Getterius ir Seterius.
Dešiniuoju pelės mygtuku spustelėkite „Java“ programą ir pasirinkite „Generuoti Getters ir Setters“.
Dabar spustelėkite Generuoti parinktis, pateikta lango Generuoti apačioje. Jis automatiškai sugeneruos nustatymo ir gaudymo elementus.
Linux paleisti cmd
POJO klasės savybės
Žemiau yra keletas POJO klasės savybių:
- POJO klasė turi būti vieša.
- Jis turi turėti viešą numatytąjį konstruktorių.
- Jis gali turėti argumentų konstruktorių.
- Visuose objektuose turi būti keletas viešųjų Getters ir Setters, kad būtų galima pasiekti objektų reikšmes kitomis Java programomis.
- POJO klasės objektas gali turėti bet kokius prieigos pakeitimus, pvz., privatų, viešą, apsaugotą. Tačiau visi egzempliorių kintamieji turėtų būti privatūs, kad būtų pagerinta projekto sauga.
- POJO klasė neturėtų išplėsti iš anksto nustatytų klasių.
- Ji neturėtų įdiegti iš anksto nustatytų sąsajų.
- Jame neturėtų būti jokios iš anksto nustatytos anotacijos.
POJO klasės darbas
POJO klasė yra objektų klasė, apimanti verslo logiką. MVC architektūroje Valdiklis sąveikauja su verslo logika, kuri susisiekia su POJO klase, kad pasiektų duomenis.
Žemiau pateikiamas POJO klasės darbas.
niūri kalba
Kaip naudoti POJO klasę Java programoje
POJO klasė sukurta naudoti objektus kitose Java programose. Pagrindinis POJO klasės pranašumas yra tas, kad mums nereikės kiekvieną kartą kurti objektų kitose Java programose. Tiesiog galime pasiekti objektus naudodami get() ir set() metodus.
Norėdami pasiekti objektus iš POJO klasės, atlikite šiuos veiksmus:
- Sukurkite POJO klasės objektus
- Nustatykite reikšmes naudodami set() metodą
- Gaukite reikšmes naudodami get() metodą
Pavyzdžiui, tame pačiame pakete sukurkite MainClass.java klasės failą ir įrašykite jame šį 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()); } }
Išvestis:
Name: Alisha Id: A001 Salary: 200000.0
Iš aukščiau pateikto pavyzdžio matome, kad pasiekėme POJO klasės ypatybes MainClass.java.
POJO yra panašus į Bean Class, todėl žmonės dažnai tarp jų susipainioja; pažiūrėkime skirtumą tarp POJO ir Bean.
Java pupelės
Java pupelių klasė taip pat yra objektų klasė, kuri sujungia kelis objektus į vieną failą ( Bean Class File). Yra keletas skirtumų tarp POJO ir Bean.
„Java POJO“ ir „Bean“ trumpai:
- Visi pupelių failai gali būti POJO, bet ne visi POJO yra pupelės.
- Visi „Bean“ failai gali įdiegti nuosekliąją sąsają, tačiau ne visi POJO gali įdiegti nuosekliąją sąsają.
- Abi nuosavybės turi būti privačios, kad galėtumėte visiškai valdyti laukus.
- Savybės turi turėti geterius ir nustatytojus, kad galėtų jas pasiekti kitose Java programose.
- Pupelių klasė yra POJO klasės pogrupis.
- Nėra didelio POJO naudojimo trūkumo, tačiau keletas trūkumų gali būti naudojant pupelių klasę.
- POJO naudojamas, kai norime vartotojams suteikti visišką prieigą ir apriboti savo narius. Bean yra naudojamas, kai norime suteikti dalinę prieigą nariams.
POJO vs. Pupelės
POJO | Pupelės |
---|---|
„Pojo“ nėra jokių specialių apribojimų, išskyrus „Java“ konvencijas. | Tai yra specialus POJO failų tipas, turintis tam tikrų specialių apribojimų, išskyrus Java konvencijas. |
Tai suteikia mažiau galimybių valdyti laukus, palyginti su „Bean“. | Tai užtikrina visišką apsaugą laukuose. |
POJO failas gali įdiegti Serializable sąsają; bet tai nėra privaloma. | „Bean“ klasė turėtų įdiegti „Serializable“ sąsają. |
POJO klasę galima pasiekti naudojant jų pavadinimus. | Pupelių klasę galima pasiekti tik naudojant geterius ir nustatymo įrenginius. |
Laukai gali turėti bet kurį prieigos modifikatorių, pvz., viešą, privatų, apsaugotą. | Laukai gali turėti tik privačią prieigą. |
POJO nebūtina turėti no-arg konstruktoriaus; jis gali turėti arba neturėti. | Jame turi būti no-arg konstruktorius. |
POJO naudojimas neturi jokio trūkumo | „Bean“ naudojimo trūkumas yra tas, kad numatytasis konstruktorius ir viešasis nustatymas gali pakeisti objekto būseną, kai ji turėtų būti nekintanti. |