top 30 jsf interview questions
Ta vadnica ponuja pogosta vprašanja o vprašanjih in odgovorih za Java Server Faces ali JSF z razlagami, ki vam pomagajo pri pripravi na razgovor:
Za razvijalce Java je bistvenega pomena, da ima delovno znanje v enem ali več priljubljenih okoljih Java, kot so Spring, Hibernate, Struts in Java Server Faces (JSF).
JSF je eden od okvirov Java, ki hitro pomaga pri oblikovanju komponent spletnega uporabniškega vmesnika.
JSP je bila Java tehnologija, ki je za razvoj dinamičnih spletnih vsebin uporabljala Java API, implicitne predmete in oznake po meri, medtem ko je uporabljala Java Server Faces (JSF), ogrodje spletnih aplikacij, ki temelji na Javi, za razvoj komponent spletnega uporabniškega vmesnika.
JSF je za razvoj komponent, ki temeljijo na strežniški predlogi, upravljal fižol, dovoljene obrazce, pripise in knjižnice pripomočkov, kot so osnovni obrazi in obrazi Omni ali ledeni obrazi.
Kaj se boste naučili:
Obrazi Java Server
Tehnologija Java Server Faces ponuja API za izdelavo komponent uporabniškega vmesnika za večkratno uporabo na spletnih straneh. Komponente poveže z virom podatkov aplikacije in dogodki, ki jih ustvari odjemalec, z upravljavci dogodkov na strani strežnika, vzdržuje stanje uporabniškega vmesnika v več zahtevah strežnika in implementira komponente po meri.
JSF ponuja osnovno knjižnico, standardne vhodne elemente HTML kot osnovne komponente uporabniškega vmesnika, ki temeljijo na različnih napravah in vrstah odjemalcev, na primer brskalnik HTML, WAP ali brezžične naprave, omogočajo upodabljanje komponent uporabniškega vmesnika.
Pogosta vprašanja o intervjujih JSF
V # 1) Kaj je Java Server Faces (JSF)?
Odgovor: Gre za Java okvir, ki temelji na oblikovanju MVC in ima bogate knjižnice API in oznak, ki ponujajo izdelavo komponent uporabniškega vmesnika na strani strežnika za spletni razvoj.
JSF ima knjižnico oznak, API, Facelete in komponente uporabniškega vmesnika ter upravljane fižole za ustvarjanje spletnih aplikacij.
V # 2) Katere funkcije Java Server Faces ponujajo pri spletnem razvoju?
Odgovor: Funkcije so navedene spodaj:
- Okvir Java, zgrajen prek API-ja Servlet
- Komponente uporabniškega vmesnika so shranjene na strežniku
- Dogodek usmerjen programski model, ki se obdeluje na strežniku
- Podpira več odjemalskih naprav
- Enostavnost izvajanja komponent tretjih oseb
- Razširljiva arhitektura
- Obsežna podpora orodij Borland, Exadel, Sun, Oracle, IBM, BEA itd.
- Pristop hitrega razvoja aplikacij (RAD)
- Podpira internacionalizacijo oznak uporabniškega vmesnika in besedila
Funkcije Java Server Faces:
V # 3) Pojasnite življenjski cikel JSF.
Odgovor: Življenjski cikel vsebuje 6 faz, kot je razloženo spodaj:
# 1) Obnovi pogled: Življenjski cikel se začne s fazo pogleda obnovitve. Ko na spletni strani kliknete povezavo ali gumb, se JSF pošlje zahteva s spodaj navedenimi postopki:
- Pogled gradi JSF
- Poveže obdelovalce dogodkov in potrjevalnike s komponentami uporabniškega vmesnika
- Shrani ta pogled v primerek FacesContext
- Vse informacije pošlje FacesContext za obdelavo zahteve
# 2) Uporabi zahtevo: Tu se ustvari vsaka komponenta iz drevesa komponent. Uporabite metodo dekodiranja, ki zajame in shrani nove vrednosti iz parametrov zahteve. V primeru napake med pretvorbo ustvari sporočilo o napaki in ga navede na FacesContext. V fazi odziva na upodabljanje bodo prikazana sporočila o preverjanju ali napake. JSF se premakne v fazo odziva, ko poslušalci dogodkov metode dekodiranja pokličejo metodo renderResponse.
# 3) Potrditev procesa: V tej fazi JSF obdela validacije dreves komponent, preuči pravila atributov za validacijo in jih primerja s shranjeno lokalno vrednostjo komponente. V primeru neveljavne lokalne vrednosti JSF v primerek FacesContext doda sporočilo o napaki, pri čemer se ista stran prikaže s sporočilom o napaki in se življenjski cikel JSF premakne naprej v fazo odziva na upodabljanje.
# 4) Posodobitev vrednosti modela: Ko JSF preveri veljavne podatke, nastavi ustrezne lastnosti objekta na strani strežnika na lokalne vrednosti komponente in posodobi lastnosti zrna, ki ustrezajo atributu vrednosti vhodne komponente. Ko se z metodami updateModels pokliče renderResponse iz trenutnega primerka FacesContext, se JSF premakne v fazo odziva na upodabljanje.
# 5) Pokliči aplikacijo: Dogodke na ravni aplikacije, kot je oddaja obrazca ali posredovanje na drugo stran, v tej fazi obravnava Java Server Faces.
# 6) Odgovor upodabljanja: Če ima aplikacija strani JSP, JSF zahteva, da strežnik aplikacij upodobi stran, s čimer doda komponente na strani v drevo komponent. V nasprotnem primeru že zgrajenemu drevesu komponent ni treba dodati nobenih komponent; JSP vsebnik premika oznake in upodablja komponente. Stanje odziva se shrani po upodobitvi vsebine pogleda, tako da lahko zaporedne zahteve dostopajo do stanja in njegove razpoložljivosti za obnovitev faze pogleda.
V # 4) Kakšen je pomen upravljanega fižola v Java Server Faces?
Odgovor: Upravljani fižol je fižol Java, ki vsebuje getter in setter metode in ima v njem oblikovano poslovno logiko. Po želji ima lahko tudi fižol. Delujejo kot model za komponente uporabniškega vmesnika v okviru MVC.
Za JSF 1.2 jih je treba registrirati v konfiguracijski datoteki JSF, faces-config.xml, medtem ko se od JSF 2.0 dalje pripisi uporabljajo za registracijo upravljanega fižola.
V # 5) Kakšni so obsegi upravljanega fižola?
Odgovor: Managed Beans je razred Java, ki je sestavljen iz nabora metod in lastnosti getter / setter. Deluje kot model okvira JSF in ponuja funkcije, kot so
- Potrditev podatkov komponent
- Upravljanje izvajanja dogodka komponente
- Obdelava, da se odloči, katera aplikacija strani bo krmarila naprej
- JSF uporablja upravljane fižole bodisi tako, da jih konfigurira v datoteko XML ali prek pripisov.
Za razred upravljanega fižola se uporabljajo naslednji obsegi:
- Uporaba
- Seja
- Pogled
- Prošnja
- Nobenega
- Po meri
V # 6) Kaj je facelet?
Odgovor: Faceleti so lahki jezik za deklariranje strani, ki uporablja predloge slogov HTML za izdelavo drevesa komponent za gradnjo pogledov obrazov Java strežnika.
Nekatere funkcije Facelets so navedene spodaj:
- Za ustvarjanje spletnih strani uporablja XHTML.
- Poleg knjižnic oznak JSF in JSTL ponuja knjižnice oznak Facelets.
- Podpora za jezik izraza, predloge komponent in strani.
V # 7) Pojasnite prednosti uporabe Faceleta.
Odgovor: Prednosti so naslednje:
- Hiter čas prevajanja
- Visoko zmogljivo upodabljanje
- S prilagoditvijo razširja svojo funkcionalnost na komponente in druge predmete na strani strežnika
- Podpora za ponovno uporabo kode s sestavljenimi komponentami in predloge
- Preverjanje EL v času prevajanja
V # 8) Navedite oznake Facelet, ki se uporabljajo v Java Server Face.
Odgovor: Nekatere oznake Facelet, uporabljene v JSF, so navedene spodaj:
- ui: komponenta definira ustvarjeno komponento in jo doda drevesu komponent.
- ui: sestava definira sestavo strani, neobvezno uporablja predloge in prezre vsebino zunaj.
- ui: odpravljanje napak definira ustvarjeno komponento za odpravljanje napak in jo doda drevesu komponent.
- ui: okrasite je podoben oznaki komponente, upoštevajte vsebino zunaj te oznake.
- ui: definiraj se uporablja za določanje vsebine, ki jo na stran vstavi predloga.
- ui: fragment je podoben komponenti in okrasi oznako. Upošteva vsebino zunaj te oznake.
- ui: vključi ponovno uporabi in zajame vsebino več strani.
- ui: vstavi kot ime vstavi vsebino v predlogo.
- ui: stop posreduj parametre vključeni datoteki.
- ui: ponovite alternativa oznakam zanke, na primer c: forEach ali c: dataTable.
- ui: odstrani se uporablja za odstranjevanje vsebine s strani.
V # 9) Seznam vrst navigacije po straneh podpira JSF.
Odgovor: JSF podpira naslednje vrste navigacije po straneh:
- Pogojna navigacija
- Navigacija naprej in preusmeritev
- Implicitna navigacija
- Navigacija prek upravljanega fižola
- Navigacija prek preusmeritvene navigacije
V # 10) Opišite različne oznake besedilnih polj, ki jih ponuja JSF.
Odgovor: Različne oznake besedilnih polj so opisane spodaj:
- vstavi polje z besedilom ob polju oznake.
- se uporablja kot vsebnik za vnos številnih znakov.
- je vrsta besedilnega polja, ki se uporablja za polje gesla, tako da vneseni podatki niso razkriti.
V # 11) Opišite izraz vrednosti in izraz metode.
Odgovor: Izraz vrednosti pridobi vrednost in nastavi vrednost. Nadalje se delijo na izraz rvalue in izraz lvalue. rvalue lahko bere samo podatke, medtem ko Vrednost zna prebrati in zapisati podatke.
Javna metoda zrna se prikliče z izrazom Method, ki vrne rezultat, potreben za preverjanje podatkovne komponente in obdelavo dogodkov.
V # 12) Katere vrste preverjanja veljavnosti so na voljo v JSF?
Odgovor: V JSF obstajata dve vrsti validacij, in sicer deklarativna in imperativna.
- Izjavo preverjanja veljavnosti se uporabijo s standardnimi preverjalniki JSF ali s potrdili Bean.
- Nujno validacije so zapleteni validacije, ki jih je določil uporabnik in preglasijo standardno validacijo, saj standardna sporočila o validaciji v vseh primerih niso ustrezna.
V # 13) Seznam izrazov podpira JSF Expression Language.
Odgovor: Podprti izrazi so navedeni spodaj:
- Izraz takojšnje vrednosti
- Izraz odložene vrednosti
- Izraz vrednosti
- Izražanje metode
V # 14) Opišite različne vrste dogodkov JSF.
Odgovor: Obstajajo predvsem tri vrste dogodkov JSF, in sicer akcijski dogodki, dogodki spremembe vrednosti in fazni dogodki.
- Akcijski dogodki so ustvarjene za komponente uporabniškega vmesnika, kot sta ukazni gumb ali ukazna hiperpovezava.
- Dogodki spremembe vrednosti besedilno polje sklica, polje s seznamom izbirnih gumbov. Vsaka sprememba vrednosti v teh komponentah uporabniškega vmesnika bo sprožila dogodek spremembe vrednosti.
- Fazni dogodki se sprožijo med začetkom ali proti koncu katere koli od šestih faz življenjskega cikla JSF.
V # 15) Podrobno razložite komponente tabele, vezane na podatke.
Odgovor: Komponente, odgovorne za prikaz relacijskih podatkov v obliki tabele, so znane kot komponente tabele, vezane na podatke. oznaka ponavlja vsakega zapisa, prikazanega v vrsticah, medtem ko oznaka prikaz podatkovnih komponent.
Nekateri atributi h: dataTable so padci celic, razmik celic, bgcolor in obroba.
V # 16) Navedite oznake za preverjanje veljavnosti, ki so na voljo v JSF.
Odgovor: Oznake za preverjanje veljavnosti so navedene spodaj:
- f: validateLength se uporablja za preverjanje dolžine niza.
- f: validateLongRange se uporablja med preverjanjem obsega številskih vrednosti.
- f: validateDoubleRange se uporablja med preverjanjem obsega float vrednosti.
- f: validateRegex: validacija primerja dani regularni izraz s komponentami JSF.
V # 17) Kaj so pripisi JSF?
Odgovor: Pripis v JSF pomaga pri razvoju jasne in čiste kode. Uporablja se lahko v samih paketih, razredih, konstruktorjih, vmesnikih, poljih, metodah, parametrih, spremenljivkah ali pripisih.
Obstajajo predvsem tri kategorije označevanja - namreč Označevalniki, pripisi z eno vrednostjo, celotni pripisi.
V # 18) Opišite združevanje virov.
Odgovor: Oznake uporabniškega vmesnika, format datuma, sporočila o stanju in besedilne elemente uporabniškega vmesnika, kot je shranjevanje parametrov za lokalizacije za internacionalizacijo itd., Je vedno priročno shraniti v datoteko lastnosti, namesto da bi jih težko kodirali na vsaki strani XHTML. Shranjevanje teh konstantnih vrednosti v eno datoteko in prikaz teh vrednosti na različnih straneh je znano kot združevanje virov.
Deskriptor razmestitve faces-config.xml vsebuje konfiguracijske nastavitve za aplikacijo JSF, kjer lahko nastavimo sveženj virov in shranimo te vrednosti vanj.
V # 19) Naštejte prednosti uporabe okvira JSF.
Odgovor: Sledi nekaj pomembnih prednosti:
- JSF ogrodje hitro ustvari uporabniške vmesnike z vgrajeno knjižnico komponent uporabniškega vmesnika z ločitvijo med predstavitvijo in vedenjem.
- Ima bogato arhitekturo za upravljanje, obdelavo in preverjanje uporabniških vnosov.
- Njegovi dogodki so integrirani s kodo na strani strežnika.
- Ponuja vtični nadzor na ravni komponente.
- Podpira funkcije dostopnosti in internacionalizacije.
V # 20) Naštejte prednosti jezika izražanja.
Odgovor: Jezik izražanja ponuja naslednje prednosti:
- Avtorji strani lahko zmanjšajo uporabo skriptiranja na spletni strani
- Ponujajo večjo storilnost
- Enostavno vzdrževanje
- Ploska krivulja učenja
- Vključeno v JSP 2.0, JSF
- Uporaba izražanja v različnih fazah življenjskega cikla strani
- Nastavite zunanje podatke o objektih in jih pridobite z izrazi
- Izrazi metod ponujajo obdelavo dogodkov, preverjanje veljavnosti in druge funkcije za komponente uporabniškega vmesnika JSF
V # 21) Pojasnite, kaj lahko vsebuje imenik vojne datoteke aplikacije Java Server Faces?
Odgovor: Datoteka arhiva (vojne) aplikacije JSF vsebuje naslednje:
- web.xml - konfiguracijski vir deskriptorja spletnih aplikacij za spletne aplikacije.
- Bistveni razredi v naboru datotek JAR (Java Archive).
- Razredi aplikacij, strani Java Server Faces, drugi zahtevani viri, kot so slikovne datoteke.
- Datoteke virov za konfiguracijo aplikacije.
V # 22) Katere vrste oznak Facelet se uporabljajo v JSF 2.0?
Odgovor: Različne vrste oznak Facelet v JSF 2.0 so:
- Predloge ponujajo skupni slog in postavitev vmesnika v spletnih aplikacijah, ui: insert, ui: define, ui: include in ui: sastav.
- Oznake Param so za posredovanje parametrov v datoteko predloge.
- Oznake po meri za upodabljanje vsebine po meri.
- Odstrani oznako uporablja se za zaustavitev upodabljanja komentirane kode JSF na strani odjemalca.
V # 23) Opišite knjižnice oznak JSF Standard
Odgovor: Knjižnica standardnih oznak JSF je sestavljena iz različnih vrst vnosa HTML. Nekateri med njimi so navedeni spodaj:
- h: inputText: Ustvari besedilno polje HTML vrste besedila
- h: inputSecret: Besedilno polje HTML vrste gesla
- h: inputTextarea: Vnosno polje besedila HTML
- h: inputHidden: Vnos vrste HTML je skrit
- h: selectBooleanCheckbox: Potrditveno polje za en HTML
- h: selectManyCheckbox: Za skupino potrditvenih polj HTML
- h: selectOneRadio: Za en sam izbirni gumb HTML
- h: selectOneListBox: Za enojno polje s seznamom HTML
V # 24) Pogovorite se o pomembnosti pripisa @ManagedProperty v JSF 2.0.
Odgovor: Z uporabo pripisa @ManagedProperty lahko fiž vbrizgamo v drugo lastnost fižola z uporabo metode nastavitve fižola. Potrebujemo atribut vrednosti, ki vsebuje ime fižola, ki ga je treba vbrizgati.
V # 25) Kaj označuje oznaka @ApplicationScoped?
Odgovor: Opomba @ApplicationScoped se uporablja za določanje obsega, znotraj katerega bo fižol shranjen in ostane med interakcijo uporabnika v spletnih aplikacijah. Upravljani fižol ponavadi zaostaja za primer.
Da bi z začetkom aplikacije ustvarili fižol z obsegom aplikacije. Atribut Eager se v upravljanem fižolu uresniči.
@ManagedBean (željno = resnično)
@ApplicationScoped
V # 26) Seznam komponent tabele, vezanih na podatke, iz JSF 2.0.
Odgovor: tag se uporablja za ustvarjanje podatkovne tabele in komponente tabele, vezane na podatke, v JSF sestavljajo elementi, kot so razvrščanje stolpcev (naraščajoče / padajoče), potrditvena polja, paginacija.
V # 27) Navedite različno izvajanje JSF.
Odgovor: Spodaj so navedene izvedbe:
Apache MyFaces | Oracle Mojarra | OmniFaces |
---|---|---|
JSF ne podpira storitev vmesne programske opreme, kot so JAAS, JNDI, JMS in Java Mail | Podpira storitve vmesne programske opreme, kot so JAAS, JNDI, JMS in Java Mail | |
PrimeFaces | RichFaces | ICE Faces |
V # 28) Pojasnite takojšnje in upodobljene atribute v JSF.
Odgovor: Ko je logična vrednost datoteke neposredni atribut je nastavljena kot true, bo prisilila pretvorbe, dogodke in obdelavo preverjanja v fazi zahteve v življenjskem ciklu JSF.
Upodobljen atribut bi se odločil, da je komponento upodobljeno ali ne v pogledu strani, uporablja aritmetične literale in operatorje z izrazom rvalue in ne z izrazom lvalue.
V # 29) Naštejte prednosti oznak podatkovne tabele JSF.
Odgovor: Oznake podatkovne tabele JSF se uporabljajo za prikaz relacijskih podatkov v obliki tabele na straneh pogleda JSF.
Prednosti oznak podatkovne tabele so:
- Za prikaz podatkov se lahko tabela podatkov ponovi po nizih ali zbiranju vrednosti.
- Oznake podatkovne tabele ponujajo atribute za spreminjanje svojih podatkov, ki so prikazani na strani pogleda JSF.
V # 30) Razlikovanje med JSF 1.0 in JSF 2.0.
Odgovor: Razlike med obema so navedene spodaj:
JSF1.2 | JSF 2.0 |
---|---|
Upravljani fižoli so v obrazcu-config.xml registrirani z JSF 1.2 | Pripisi se uporabljajo za registracijo upravljanega fižola v JSF 2.0 |
V JSF 1.0 so Faces Servlet nastavljeni v web.xml z url-vzorcem kot / faces / * | V JSF 2.0 so obrazi Servlet nastavljeni v web.xml z url-vzorcem kot * .xhtml |
JSF 1.2 je bil izdan z EL in izboljšanim in poenotenim upravljanjem pogleda, da bi odstranili tesno sklopko z JSP. | JSF 2.0 ponuja podporo za zahteve GET, nov obseg pogleda, uporabo opomb, generikov, vključuje facelete kot privzeti pogled namesto JSP in ravnanja z viri |
JSF 1.0 uporablja API za komponente po meri | JSP je zastarel v JSF2.0 in nadomeščen z Facelets (xhtml) |
V # 31) Pojasnite najboljše prakse, uporabljene za izdelavo aplikacije JSF.
Odgovor: Najboljše prakse ali pravila, ki se jih je treba držati med spletnim razvojem z uporabo JSF v zvezi z različnimi podpornimi pastirji, so naslednji:
- Začnite z @RequestScoped Bean, dokler se poslovni podatki in stanje ne izgubijo, nato pa izberite naslednji obseg višje ravni.
- Če ne želite več deliti podatkov ali stanja med vsemi uporabniki, se izogibajte obsegu @ApplicationScoped.
- Če želite ustaviti skupno rabo podatkov ali stanja med vsemi zavihki brskalnika, se izognite @SessionScope.
- Da preprečite izgubo podatkov in stanja prek HTTP zahtev, se izogibajte @RequestScope.
- Fižol z obsegom View, Flow, Session in Conversation nima vpliva na uporabnike.
- Izogibajte se klicanju poslovne logike v metodah pridobivanja JSF backing fižol.
- Uporabite nabor rezultatov v lastnosti vrednosti.
- Za izračun nabora rezultatov se uporablja označena metoda @PostConstruct.
V # 32) Opišite arhitekturo JavaServer Faces
koliko podjetij za kibernetsko varnost obstaja
Odgovor: JavaServer Faces izvaja vzorec oblikovanja MVC, komponente so ločeno določene z drugačno logiko.
- Komponenta pogleda za predstavitveno logiko in
- Izvedena je komponenta modela za poslovno logiko.
- Komponenta krmilnika nadzoruje navigacijo iz enega pogleda v drugega in izvaja različne metode modelov.
Del krmilnika je sestavljen iz
- Servlet krmilnika, tj. FacesServlet
- Centralizirana konfiguracijska datoteka, tj. Faces-config.xml
- Nabor obravnavalcev dogodkov za spletne aplikacije.
V # 33) Kakšne so razlike med JSF in Spring okvirom?
Odgovor: Razlike med obema so navedene spodaj:
Obrazi Java Server | Pomlad |
---|---|
JSF se uporabljajo za ustvarjanje komponentnih uporabniških vmesnikov za spletno aplikacijo. | Spring uporablja DispatcherServlet in vzorec zasnove krmilnika model-view za spletno aplikacijo. |
Ima zrelo ogrodje uporabniškega vmesnika, obsežne in bogate komponente strežnika življenjskega cikla zahtev | Spring ponuja aplikacijski okvir za samostojne, spletne in distribuirane aplikacije. |
JSF omogoča integracijo z HTML, JSP pri razvijanju komponente pogleda v krmilniku pogleda modela. | Velocity, Free marker itd. Se uporabljajo za komponento pogleda s Spring framework |
Nima vnaprej določene podpore za integracijo JDBC, EJB, Hibernate in RMI | Ponuja vnaprej določeno podporo za JDBC, EJB, Hibernate, RMI itd. |
JSF je okvir z veliko težo | Pomlad je majhen okvir |
Ima več odvisnosti od API-ja in nima podpore za izvedbe POJO | Ima izvedbe POJO in manj odvisnosti od API-ja. |
Zaključek
JavaServer Faces je spletno ogrodje Java, ki oblikuje komponente uporabniškega vmesnika z uporabo upravljanih zrn, podpornih zrn, faceletov in drugih knjižnic po meri, kot so glavni obrazi ali ledene ploskve.
Arhitekti aplikacij, razvijalci, avtorji komponent in strani bi se morali dobro poznati tudi različnih okvirov, kot so Java Server Faces, poleg drugih okvirov, kot so Spring, Hibernate in Struts.
Ta vadnica za vprašanja JSF vam pomaga pri pripravi na večino intervjujev JSF.
Priporočeno branje
- 20 najboljših programov Java Interview za programiranje in kodiranje intervjujev
- Vprašanja in odgovori za JSP-intervju (Posodobljeno 2021)
- 30+ TOP vprašanj in odgovorov za intervju za servlete (SEZNAM 2021)
- Najpogostejših 50+ osnovnih vprašanj in odgovorov za Java
- 30+ najboljših zbirk Java Intervju z odgovori z odgovori (2021 SEZNAM)
- 25 najboljših okvirov in orodij za testiranje Java (3. del)
- Top 20+ .NET vprašanj in odgovorov za intervjuje
- Vprašanja in odgovori za intervjuje