PËRDORIMI I TABELAVE TË TË DHËNAVE NË JSF. - Kliko kodin

ndajnë

PËRDORIMI I TABELAVE TË TË DHËNAVE NË JSF.

Reklamat

Shembull i tabelës së paracaktuar.
Në këtë laborator do të shohim një shembull të thjeshtë që tregon se si të përdorim komponentin DataTable, ky element na lejon të lidhim një tabelë të dhënash me faqen tonë si kjo:

Për shembullin e parë, vetëm komponenti i populluar më parë do të lidhet nga klasa jonë bean, më vonë do të tregohet se si të manipulohet dinamikisht informacioni i tij.

Fillimisht do të krijojmë një projekt JSF me strukturën e mëposhtme:

Siç mund ta shohim, krijohen 2 klasa java, njëra korrespondon me klasën e personit që na lejon të përpunojmë njerëzit që do të tregojmë në tabelën tonë dhe tjetra me beanin që do të na lejojë të menaxhojmë tabelën tonë me ato përkatëse. kolonat dhe regjistrimet.
Klasa Person.java na siguron të dhënat bazë të personit që do të tregojmë në tabelë, këtu shtojmë grupin përkatës dhe marrim metoda, si dhe një konstruktor me parametra për të plotësuar drejtpërdrejt njerëzit.



Klasa TablaBean.java i referohet tabelës dhe menaxhimit të njerëzve në të, të dhënat që shfaqen ruhen në llojin e personit ArrayList i cili për qëllimet e këtij udhëzuesi plotësohet në konstruktor.


Në index.xhtml ne krijojmë komponentin DataTable me të cilin lidhim listën e njerëzve drejtpërdrejt në vlerë dhe në kolonat përkatëse atributet e bean-it që është referuar në var=”data”, me të dhënat që janë elementi që përfaqëson të dhënat. të objektit Person në çdo rresht të tabelës.



Kur e ekzekutojmë do të kemi diçka të tillë


Siç mund ta shohim, informacioni paraqitet në modalitetin e tabelës, pasi nuk kemi lidhur ende stilet CSS, vlerësojmë vetëm strukturën në rreshta dhe kolona pa asnjë lloj dizajni, megjithatë mund të shtojmë një pronë "border" në tabelë dhe një diferencë që ka diçka të tillë:


Më në fund e dimë se mund ta përdorim për të paraqitur informacionin në një mënyrë më të strukturuar.


Shembull i menaxhimit të të dhënave në DataTable.
Në këtë seksion do të vazhdojmë me shembullin e mëparshëm ku do të shohim se si të manipulojmë të dhënat e tabelës për të kryer procese të zakonshme si regjistrimi, modifikimi ose fshirja e informacionit.


Shto njerez.
Për të regjistruar njerëzit, ne do të modifikojmë faqen tonë index.xhtml me të cilën do të lidhim formularin e regjistrimit të njerëzve. Ne e bëjmë këtë duke lidhur përbërësit e hyrjes dhe përzgjedhjes në një panel rrjeti të lidhur siç duhet me objektin "myPerson" tek i cili dërgohen të dhënat e ndryshme. regjistroni atributet, më pas lidhet një buton që thërret një metodë "addPerson()" që do të lejojë një person i ri është regjistruar në sistemin tonë.

Siç e shohim, këta elementë të rinj shtohen përpara Tabela e të Dhënave duke marrë një rezultat si ky:

Pas modifikimit të indeksit, ne do të bëjmë ndryshimet e nevojshme në klasën TableBean.java, pasi në këtë shembull do të vazhdojmë të përdorim nivelin e shtrirjes së paracaktuar, kështu që listën e njerëzve do ta bëjmë statike në mënyrë që të mund të manipulohet pa asnjë problem. Përveç kësaj ne do të eliminojmë mbushjen e listës pasi ideja është që të mund të regjistrohen njerëzit përmes një formulari regjistrimi.



Siç mund ta shohim, kur e përcaktojmë listën si statike, ne krijojmë shembullin e saj në nivel klase, nuk e bëjmë këtë në konstruktor pasi kjo do të thirret në raste të ndryshme nga jsf-ja jonë e cila do të shkaktonte një shembull të ri të listës që do të na bëjnë të humbasim informacionin që mund të përmbajë.

Për më tepër, ne shtuam një objekt të tipit Person për të qenë në gjendje të menaxhojmë të dhënat e regjistrimit dhe shtuam metodën "aggregarPersona()" që lejon shtimin e një elementi të ri në listë dhe thirret nga butoni jsf, më vonë gjenerojmë një shembull të ri të objekti “minhaPessoa”.që do të lejojë pastrimin e formularit të regjistrimit.



Gjatë ekzekutimit të sistemit do të shohim sjelljen e mëposhtme:



Fillimisht formulari është bosh dhe shfaqet gjithashtu titulli i tabelës sonë, por pa asnjë përmbajtje (mos harroni që e kemi eliminuar plotësimin e listës), kështu që nuk e shfaq kokën kur nuk ka njerëz të regjistruar ende, kështu që ne përdorim Vetia "rendered" ku vërtetojmë se madhësia e listës është më e madhe se zero, përndryshe nuk duhet të tregojë kokat. (Operacioni i kësaj prone do të diskutohet në detaje më vonë)

Ndërsa shtojmë njerëz, ata ruhen në listë dhe paraqiten në Tabelën e të Dhënave

Fshi njerëzit.
Pasi të kemi regjistruar me sukses njerëzit në listën tonë, ne mund t'i heqim ata nga ajo, për ta bërë këtë ne do të shtojmë një kolonë të re veprimesh në tabelën tonë të të dhënave që do të përmbajë një lidhje me metodën "eliminatePerson()" që do të krijojmë në bean tonë.


Për ta bërë këtë, ne modifikojmë index.xhtml ku pas kolonës "Seksi" do të shtojmë kolonën "Veprimet".


Siç mund ta shohim, ne përdorim një komponent dhe në veprim quajmë metodën “eliminarPersona()” së cilës do t’i dërgojmë vlerën “data” si parametër, duke kujtuar se të dhënat janë ekuivalente me objektin e listës që shfaqet në një linjë specifike.

Më vonë, në klasën TablaBean.java, shtuam metodën “eliminarPersona()” që merr si parametër objektin e personit që duam të fshijmë, kjo korrespondon me “të dhënat” që dërgojmë nga jsf dhe është ekuivalente me personin në rreshtin që duam ta fshijmë, për ta hequr më pas nga lista.

Gjatë ekzekutimit të sistemit do të kemi sa vijon:

Dhe sa herë që fshijmë një rekord përmes lidhjes përkatëse, tabela do të përditësohet

Redakto Njerëzit.
Pasi të kemi regjistruar dhe fshirë me sukses njerëzit nga lista jonë, ne mund t'i modifikojmë ata, për këtë ne do ta modifikojmë tabelën tonë duke e bërë atë të redaktueshme kur duam të përditësojmë disa nga të dhënat, për këtë ne do të përdorim përsëri veçorinë "rendered" e cila do të tregojë ose fshehni opsionet e modifikueshme në varësi të asaj që vendos përdoruesi.


Siç mund ta shohim në secilën nga kolonat, shtohet një komponent e cila do të fshihet si parazgjedhje falë vetive “rendered” që ju lejon të ruani të dhëna të vërteta ose false për të shfaqur ose fshehur komponentin shoqërues.

Në rastin tonë "data.edit" bën thirrje për një variabël boolean (edit) që kemi shtuar në klasën Person, nëse vetia është e vërtetë atëherë ajo do të tregojë për të lejuar modifikimin, por nëse vetia është e vërtetë false (jo e vërtetë) atëherë ajo do të shfaqë


E njëjta gjë duhet bërë për kolonën e profesionit, pagës dhe gjinisë përkatësisht, ku në vend që të shtohet një këtij të fundit, a pasi në formë ne përdorim një kombinim përzgjedhjeje të shtegut të mëposhtëm:


Po kështu, vetia e dhënë është e detyruar të tregojë kombinimin ose të tregojë etiketën në varësi të rastit.

Më pas, ndryshohet kolona “Veprimet” ku më parë kishim vetëm një lidhje me “Fshi”, tani do të shtojmë edhe 2 lidhje të tjera, një për “redaktim” dhe një tjetër për të “ruajtur” informacionin pas redaktimit.



Siç mund ta shohim, tani ekzistojnë përkatësisht 3 lidhje për metodat e redaktimit, ruajtjes dhe fshirjes, megjithatë redaktimi dhe ruajtja kanë veçorinë e dhënë që i bën të dukshme vetëm 2 nga 3 lidhjet në të njëjtën kohë (mos harroni se e dhënë përmban true ose false në varësi të me kusht ) kështu që si parazgjedhje lidhja e fshirjes do të shfaqet gjithmonë pasi nuk ka veçorinë e dhënë, ndërsa redaktimi dhe ruajtja nuk do të shihen kurrë së bashku. (ju lejon të shtoni një hapësirë midis lidhjeve)

Brenda, në një nivel grafik, Tabela e të dhënave do të duket kështu:


Edhe pse grafikisht mund t'i shihni të gjithë komponentët së bashku, është e rëndësishme të jeni shumë të qartë se vetia e dhënë do t'i tregojë përbërësit vetëm në varësi të vlerës së vërtetë ose false në atë kohë.

Pas modifikimit të index.xhtml, tani është koha për të modifikuar klasën Person.java, së cilës i shtohet vetia “edit” e përdorur nga interpretuesi i përmendur më sipër.


Siç mund ta shohim, një atribut i ri boolean është i lidhur me grupin dhe marrjen e tij përkatës. Për më tepër, për të rregulluar strukturën e ushtrimit, ne shtuam vetinë në konstruktorin e parametrizuar, megjithëse nuk përdoret më në këtë pikë të ushtrimit.

Në këtë mënyrë, sa herë që rendered=”#{data.edit}” bëhet në index.xhtml, do të thirrej kjo ndryshore, e cila do të lejonte shfaqjen ose fshehjen e komponentëve në varësi të rastit.


Më në fund, dhe me ndryshimet e mëparshme, filluam të modifikojmë klasën Bean ku duhet të shtojmë metodat përkatëse gjatë fshirjes dhe ruajtjes që thirren nga fusha "Veprimet".


Siç mund ta shohim, metoda editPersona() merr një objekt person (nga thirrja jsf, siç bëhet në metodën e fshirjes) dhe vetia e saj "edit" modifikohet duke i dërguar vlerën true, e cila do të lejojë që ky rekord të fshihet. të dhe tregoni dhe për të bërë modifikimin e dëshiruar.

Nga ana tjetër, metoda savePersona() do të jetë përgjegjëse për ndryshimin e çdo vetie “redaktimi” të të gjitha objekteve në listë në false, në mënyrë që Tabela e të dhënave të rikthehet me vlerat e njerëzve dhe jo me elementët e redaktueshëm.


Gjatë ekzekutimit të sistemit do të kemi sa vijon:


Dhe kur shtypni Edit, sistemi ndryshon në:

Siç mund të shihet, kur klikohet lidhja e redaktimit, komponentët e redaktueshëm shfaqen automatikisht ndërsa ato të pa-redaktueshme janë të fshehura, në mënyrë të ngjashme lidhja e redaktimit zhduket për t'i hapur rrugë lidhjes së ruajtjes siç shpjegohet më sipër.

Dhe gati!!!

Në blogun tim dhe në kanalin tim kam ndarë materiale në lidhje me këtë gjuhë të shkëlqyer programimi, mund të gjeni shumë artikuj dhe video nga e paraUnë ju tregoj se si të shkarkoni mjetet e nevojshme për të filluar programimin, ne ngjitemi gjithnjë e më shumë përmes koncepteve bazë, duke kaluar nëpër konceptet e programimit të orientuar drejt objektitstandardet, temavestrukturat e të dhënave, aksesi në bazat e të dhënave ndër të tjera, në ndërtim aplikacione me ndërfaqe përdoruesi.

Gjithashtu mund të gjeni një kurs nga e para ku unë mësoj se si të krijoni aplikacione celulare në android përmes një sekuence video hap pas hapi që përditësohet vazhdimisht.


Dhe tani do të filloj gjithashtu sekuencën nga e para ku do të hyjmë në botën e botimit të java Enterprise, do t'ju tregojmë se si të konfiguroni mjedisin e zhvillimit dhe si të krijoni aplikacionet tuaja të para në ueb me java.


Kjo është arsyeja pse unë ju ftoj të vizitoni codejavu.blogspot.com, për të vizituar kanali im Cristian Henao dhe se ata janë shumë të vetëdijshëm për vazhdimet e reja

Mund t'ju interesojë gjithashtu.

A ka ndonjë gjë që dëshironi të shtoni ose komentoni në lidhje me këtë hyrje? mos ngurroni të bëni….dhe nese ju pelqeu ju ftoj ta shperndani y Abonohu duke klikuar në butonin "Bashkohu në këtë faqe" për të dëgjuar më shumë postime si ky 😉