top 30 jsf interview questions
Denne veiledningen gir ofte stilte spørsmål om Java Server Faces eller JSF-intervju og svar med forklaringer som hjelper deg med å forberede deg på intervjuet:
Det er viktig for Java Developer å ha arbeidskunnskap i ett eller flere populære Java-rammeverk som Spring, Hibernate, Struts og Java Server Faces (JSF).
JSF er en av Java-rammeverkene som raskt hjelper med å designe komponenter for web-brukergrensesnitt.
JSP var en Java-teknologi som benyttet Java API, implisitte objekter og tilpassede koder for å utvikle dynamisk webinnhold, mens JSF (Java Server Faces), et Java-basert nettapplikasjonsrammeverk for å utvikle nettbaserte brukergrensesnittkomponenter.
JSF har administrert bønner, ansiktslater, merknader og verktøybiblioteker som primære ansikter og Omni-ansikter eller isflater for å utvikle malbaserte komponenter på serversiden.
Hva du vil lære:
Java Server Faces
Java Server Faces-teknologien tilbyr API for å bygge gjenbrukbare brukergrensesnittkomponenter på websidene. Den kobler komponenter med applikasjonsdatakilden og klientgenererte hendelser til hendelseshåndterere på serversiden, opprettholder UI-tilstand på tvers av flere serverforespørsler samt implementerer tilpassede komponenter.
JSF tilbyr kjernebibliotek, standard HTML-inngangselementer som basale UI-komponenter, basert på forskjellige enheter og klienttype, for eksempel HTML-nettleser, WAP eller trådløse enheter, gir renderingskapasitet til UI-komponenter.
Ofte stilte spørsmål om JSF-intervju
Q # 1) Hva er Java Server Faces (JSF)?
Svar: Det er et Java-rammeverk basert på MVC-design som har rike API- og taggbiblioteker som tilbyr opprettelse av servergrensesnittkomponenter for webutvikling.
JSF har et tagbibliotek, API, fasetter og UI-komponenter og administrerte bønner for å lage webapplikasjoner.
Q # 2) Hvilke funksjoner tilbyr Java Server Faces i nettutvikling?
Svar: Funksjonene er listet opp nedenfor:
- Java-rammeverk bygget over Servlet API
- UI-komponenter er lagret på serveren
- Hendelsesdrevet programmeringsmodell som håndteres på serveren
- Støtter flere klientenheter
- Enkel å implementere tredjepartskomponenter
- Utvidbar arkitektur
- Omfattende verktøystøtte fra Borland, Exadel, Sun, Oracle, IBM, BEA, etc.
- RAP (Rapid Application Development) tilnærming
- Støtter internasjonalisering av UI-etiketter og tekst
Java Server Faces-funksjoner:
Q # 3) Forklar JSF livssyklus.
Svar: Livssyklusen inneholder 6 faser, som forklart nedenfor:
# 1) Gjenopprett visning: Livssyklusen begynner med gjenopprettingsfasen. Når det klikkes på en lenke eller knapp på websiden, sendes en forespørsel til JSF med operasjoner som er oppført nedenfor:
- View er bygget av JSF
- Kobler hendelsesbehandlere og validatorer til brukergrensesnittkomponenter
- Lagrer denne visningen i FacesContext-forekomst
- Gir all informasjon til FacesContext for å behandle forespørselen
# 2) Bruk forespørsel: Her opprettes hver komponent fra komponenttreet. Bruk dekodingsmetoden som fanger opp og lagrer nye verdier fra forespørselsparametere. I tilfelle feil under konvertering, genererer den en feilmelding og viser den på FacesContext. Det vil vise valideringsmeldinger eller feil under gjengivelsesresponsfasen. JSF beveger seg for å gjengi responsfase når dekodemetode hendelseslyttere kaller renderResponse-metoden.
# 3) Prosessvalidering: I løpet av denne fasen behandler JSF komponenttrevalidatorer, undersøker attributtregler for validering og sammenligner dem med den lagrede lokale verdien til komponenten. I tilfelle ugyldig lokal verdi, legger JSF til en feilmelding til FacesContext-forekomsten, viser den samme siden med en feilmelding og med JSF-livssyklusen som beveger seg lenger mot gjengivelsesfasen.
# 4) Oppdatering av modellverdi: Etter at JSF har bekreftet gyldige data, setter den tilsvarende objektegenskaper på serversiden til komponentens lokale verdier og oppdaterer bønneegenskapene, tilsvarende verdiottributtet til inngangskomponenten. Når renderResponse fra den nåværende forekomsten av FacesContext blir kalt opp ved hjelp av updateModels-metoder, flytter JSF til gjengivelsesfasen.
# 5) Påkall søknad: Hendelser på applikasjonsnivå som å sende inn skjema eller videresende til en annen side blir håndtert av Java Server Faces i denne fasen.
automatisert testverktøy for webapplikasjoner
# 6) Gjengi svar: I tilfelle applikasjonen har JSP-sider, ber JSF applikasjonsserveren om å gjengi siden, og legger derved komponenter på siden til komponenttreet. Ellers trenger ikke et allerede bygget komponentetre å legge til noen komponenter; JSP container flytter merker og gjengir komponenter. Svartilstanden lagres etter at visningsinnholdet er gjengitt, og påfølgende forespørsler kan få tilgang til staten og dens tilgjengelighet for å gjenopprette visningsfasen.
Spørsmål nr. 4) Hva er betydningen av administrerte bønner i Java Server Faces?
Svar: Managed Beans er Java-bønner som består av getter- og settermetoder og har en forretningslogikk designet i den. Det kan eventuelt ha en bakebønne. De fungerer som en modell for UI-komponenter i MVC-rammeverket.
For JSF 1.2 er det nødvendig å registrere dem i JSF-konfigurasjonsfilen, ansikter-config.xml, mens kommentarer fra JSF 2.0 og utover brukes til å registrere administrerte bønner.
Q # 5) Hva er omfanget av administrerte bønner?
Svar: Managed Beans er en Java-klasse som består av et sett med metoder og egenskaper for getter / setter. Den fungerer som en modell for JSF-rammeverket og tilbyr funksjoner som,
- Validering av komponentdata
- Administrer utførelsen av en komponenthendelse
- Behandler for å bestemme hvilken sideapplikasjon som navigerer neste
- JSF bruker administrerte bønner enten ved å konfigurere dem i en XML-fil eller gjennom merknader.
Følgende omfang brukes for klarte bønneklasser:
- applikasjon
- Økt
- Utsikt
- Be om
- Ingen
- Tilpasset
Q # 6) Hva er en Facelet?
Svar: Fasetter er et lett sidedeklarasjonsspråk som bruker HTML-stilmaler for å bygge komponenttreet for å bygge Java-serveransiktsvisninger.
Noen av Facelets-funksjonene er listet opp som nedenfor:
- Den bruker XHTML for å lage websider.
- Foruten JSF- og JSTL-tagbiblioteker, tilbyr det Facelets-tagbiblioteker.
- Støtte for uttrykk, komponent og sider mal.
Q # 7) Forklar fordelene ved å bruke Facelet.
Svar: Fordelene er som følger:
- Rask kompileringstid
- Gjengivelse med høy ytelse
- Utvider funksjonaliteten til komponenter og andre objekter på serversiden via tilpasning
- Støtte for gjenbruk av kode gjennom sammensatte komponenter og mal
- EL-validering av kompileringstid
Q # 8) Liste over facelet-koder som brukes i Java Server Face.
Svar: Noen av Facelet-kodene som brukes i JSF er listet opp nedenfor:
- ui: komponent definerer den opprettede komponenten og legger til komponenttreet.
- ui: komposisjon definerer sidesammensetning, bruker maler valgfritt og ignorerer innhold utenfor.
- ui: feilsøk definerer feilsøkingskomponent opprettet og legges til komponenttreet.
- ui: dekorere ligner komponent-taggen, vurder innhold utenfor denne taggen.
- ui: definere brukes til å definere innhold satt inn på siden av en mal.
- ui: fragment ligner på komponent og dekorerer tag. Den vurderer innhold utenfor denne taggen.
- ui: inkluderer gjenbruker og innkapsler flere sideinnhold.
- ui: sett inn som navn setter inn innhold i en mal.
- ui: stopp overføre parametere til den inkluderte filen.
- ui: gjenta et alternativ for loop-koder, som c: forEach eller c: dataTable.
- ui: fjern brukes til å fjerne innhold fra en side.
Q # 9) Listetyper av sidnavigering JSF støtter.
Svar: JSF støtter følgende sidens navigasjonstyper:
- Betinget navigering
- Videresend versus omdirigeringsnavigasjon
- Implisitt navigering
- Navigering via administrert bønne
- Navigering via omdirigeringsnavigasjon
Q # 10) Beskriv forskjellige tekstfeltkoder som tilbys av JSF.
Svar: Ulike tekstfeltmerker er som beskrevet nedenfor:
- setter inn tekstboksen ved siden av etikettfeltet.
- brukes som en beholder for å skrive inn mange tegn.
- er en type tekstfelt som brukes til passordfelt slik at de oppgitte dataene ikke blir avslørt.
Q # 11) Beskriv verdiuttrykk og metodeuttrykk.
Svar: Verdiuttrykk henter en verdi og setter en verdi. De er videre delt inn i rvalueuttrykk og lvalueuttrykk. verdi kan bare lese data, mens verdi kan lese og skrive data.
Offentlig metode for bønnen påkalles av Method-uttrykk som returnerer resultatet som kreves for validering av datakomponenten og håndtering av hendelser.
Sp # 12) Hvilke typer valideringer er tilgjengelige i JSF?
topp 10 musikknedlasting for android
Svar: Det er to typer valideringer i JSF, nemlig deklarativ og imperativ.
- Deklarativ valideringer påkalles ved hjelp av JSF-standardvalidatorer eller Bean-validatorer.
- Avgjørende valideringer er komplekse brukerdeklarerte validatorer som overstyrer standardvalideringen, ettersom standardvalideringsmeldinger ikke er tilstrekkelige i alle tilfeller.
Q # 13) Listeuttrykk JSF Expression Language støtter.
Svar: Uttrykk som støttes er oppført nedenfor:
- Umiddelbar verdiuttrykk
- Utsatt verdiuttrykk
- Verdiuttrykk
- Metodeuttrykk
Q # 14) Beskriv forskjellige typer JSF-hendelser.
Svar: Det er hovedsakelig tre typer JSF-hendelser, nemlig Action-hendelser, Value Change-hendelser og Fase-hendelser.
- Handlingshendelser blir generert for brukergrensesnittkomponenter som kommandoknappen eller kommandohyperkoblingen.
- Verdiendringshendelser referanse tekstfelt, listeknapp for alternativknapp. Enhver verdiendring i disse UI-komponentene vil påkalle en verdiendringshendelse.
- Fasehendelser avfyres enten under starten eller mot slutten av en av de seks fasene i JSF-livssyklusen.
Q # 15) Forklar i detalj de databundne tabellkomponentene.
Svar: Komponenter som er ansvarlige for å vise relasjonsdata i tabellformat er kjent som databundne tabellkomponenter. stikkord den gjentas over hver av postene som vises i rader, mens stikkord vise datakomponenter.
Noen av egenskapene til h: datatabell er cellestopp, celleavstand, bgfarge og kantlinje.
Q # 16) Liste over valideringsmerker tilgjengelig i JSF.
Svar: Validator-kodene er oppført nedenfor:
- f: validateLength brukes til å validere strenglengde.
- f: validateLongRange brukes mens du validerer det numeriske verdiområdet.
- f: validateDoubleRange brukes mens du validerer flyteverdiområdet.
- f: validateRegex: validering sammenligner gitt regulært uttrykk med JSF-komponenter.
Sp # 17) Hva er JSF-merknader?
Svar: Kommentarer i JSF hjelper i utviklingen av klar og ren kode. Den kan brukes i pakker, klasser, konstruktører, grensesnitt, felt, metoder, parametere, variabler eller merknader selv.
Det er hovedsakelig tre kategorier av merknader - nemlig. Markører, merking med én verdi, fullstendige merknader.
Q # 18) Beskriv ressurssamling.
Svar: Det er alltid praktisk å lagre UI-etiketter, datoformat, statusmeldinger og UI-tekstelementer, for eksempel å lagre parametere for lokaliteter for internasjonalisering etc. i egenskapsfilen i stedet for å hardkode disse på hver XHTML-side. Å lagre disse konstante verdiene i en fil og vise disse verdiene på forskjellige sider er kjent som ressurssamling.
Distribusjonsbeskrivelse ansikter-config.xml inneholder konfigurasjonsinnstillinger for JSF-applikasjonen, hvor vi kan konfigurere ressurspakke og lagre disse verdiene i den.
Spørsmål nr. 19) List fordelene ved å bruke JSF-rammeverket.
Svar: Følgende er noen av de viktige fordelene:
- JSF framework oppretter raskt brukergrensesnitt med det innebygde UI-komponentbiblioteket med skille mellom presentasjon og atferd.
- Den har en rik arkitektur for å administrere, behandle, validere brukerinnganger.
- Arrangementene er integrert med server-side-kode.
- Tilbyr pluggbar komponentnivåkontroll.
- Støtter tilgjengelighets- og internasjonaliseringsfunksjoner.
Q # 20) Liste fordelene med uttrykk språk.
Svar: Uttrykksspråk gir følgende fordeler:
- Sideforfattere kan minimere bruken av skript på websiden
- Tilby større produktivitet
- Lett å vedlikeholde
- Flat læringskurve
- Inkludert i JSP 2.0, JSF
- Bruk av uttrykk på forskjellige stadier av siden livssyklus
- Sett eksterne objektdata og få disse dataene ved hjelp av uttrykk
- Metodeuttrykk tilbyr håndtering, validering og andre funksjoner for JSF UI-komponenter
Spørsmål nr. 21) Forklar hva Java Server Faces-programvarekatalogen kan inneholde?
Svar: Webapplikasjonsarkiv (krigs) -fil av JSF-applikasjonen inneholder følgende:
- web.xml - en konfigurasjonsressurs for webapplikasjonsbeskrivelse for webapplikasjoner.
- Viktige klasser i et sett med JAR-filer (Java Archive).
- Applikasjonsklasser, Java Server Faces-sider, andre nødvendige ressurser som bildefiler.
- Ressurefiler for applikasjonskonfigurasjon.
Spørsmål nr. 22) Hvilke typer Facelet-koder brukes i JSF 2.0?
Svar: Forskjellige typer av tagger i JSF 2.0 er:
- Maler tilby vanlig grensesnittstil og layout i webapplikasjonene, ui: insert, ui: define, ui: include, og ui: composition.
- Param-koder er for å sende parametere til malfilen.
- Egendefinerte koder for å gjengi tilpasset innhold.
- Fjern taggen brukes til å stoppe gjengivelse av kommenterte JSF-koder på klientsiden.
Q # 23) Beskriv JSF Standard-tagbiblioteker
Svar: JSF standard tag-bibliotek består av forskjellige HTML-inngangstyper. Noen av dem er som listet opp nedenfor:
- h: inputText: Oppretter HTML-tekstboks av teksttype
- h: inputSecret: HTML-tekstboks med passordtype
- h: inputTextarea: HTML tekstfelt
- h: inputSkjult: HTML-inngang av typen skjult
- h: selectBooleanCheckbox: For enkelt HTML-avkrysningsrute
- h: selectManyCheckbox: For gruppe av HTML-avmerkingsbokser
- h: selectOneRadio: For enkelt HTML-alternativknapp
- h: selectOneListBox: For HTML-enkeltliste
Q # 24) Diskuter viktigheten av @ManagedProperty-kommentar i JSF 2.0.
Svar: Ved hjelp av @ManagedProperty-merknad kan bønnen injiseres i en annen bønneegenskap ved å bruke bønnens settermetode. Vi trenger et verdiattributt som inneholder bønnenavnet som skal injiseres.
Sp # 25) Hva indikerer @ApplicationScoped-merknad?
Svar: @ApplicationScoped-merknad brukes til å definere omfanget der bønne skal lagres og forblir på tvers av brukerinteraksjon i webapplikasjoner. Administrerte bønner henger vanligvis i øyeblikket.
For å starte applikasjonen med scoped bønner med starten av applikasjonen. Ivrig attributt blir sant i managed bean.
@ManagedBean (ivrig = sann)
@ApplicationScoped
Q # 26) Liste over databundne tabellkomponenter fra JSF 2.0.
Svar: tag brukes til å lage datatabell og databundne tabellkomponenter i JSF består av elementer som kolonnesortering (stigende / synkende), avkrysningsruter, paginering.
Q # 27) Liste annen implementering av JSF.
Svar: Implementeringene er oppført nedenfor:
Apache MyFaces | Oracle Mojarra | OmniFaces |
---|---|---|
JSF støtter ikke mellomvaretjenester som JAAS, JNDI, JMS og Java Mail | Støtter mellomvaretjenester som JAAS, JNDI, JMS og Java Mail | |
PrimeFaces | RichFaces | ICE Faces |
Q # 28) Forklar umiddelbare og gjengitte attributter i JSF.
Svar: Når den boolske verdien av en umiddelbar attributt er satt som sant, vil det tvinge konverteringer, hendelser og valideringsbehandling under forespørselsfasen av JSF-livssyklusen.
Gjengitt attributt ville bestemme at komponenten skal gjengis eller ikke vises, bruker den aritmetiske bokstaver og operatorer med rvalueuttrykk og ikke med lvalueuttrykk.
Q # 29) Liste fordeler med JSF datatabell koder.
Svar: JSF-datatabellmerker brukes til å vise relasjonsdata i tabellformat på JSF-visningssider.
Fordelene som Data Table-taggene tilbyr, er:
- For å vise data kan datatabellen gjentas over matriser eller samling av verdier.
- Datatabell-koder tilbyr attributter for å endre dataene som vises på JSF-visningssiden.
Q # 30) Skille mellom JSF 1.0 og JSF 2.0.
Svar: Forskjeller mellom de to er vervet nedenfor:
JSF1.2 | JSF 2.0 |
---|---|
Administrerte bønner er registrert i ansikter-config.xml med JSF 1.2 | Kommentarer brukes til å registrere administrerte bønner i JSF 2.0 |
I JSF 1.0 er Ansikter Servlet konfigurert i web.xml med url-mønster som / ansikter / * | I JSF 2.0 Faces er Servlet konfigurert i web.xml med url-mønster som * .xhtml |
JSF 1.2 ble frigitt med EL og forbedret og enhetlig visningshåndtering for å fjerne tett kobling med JSP. | JSF 2.0 tilbyr støtte for GET-forespørsler, nytt visningsomfang, bruk av annoteringer, generiske artikler, inkluderer fasetter som standardvisning i stedet for JSP og ressurshåndtering |
JSF 1.0 bruker API for tilpassede komponenter | JSP er utfaset i JSF2.0 og erstattet av Facelets (xhtml) |
Spørsmål nr. 31) Forklar beste praksis som brukes for å bygge JSF-applikasjoner.
Svar: Beste fremgangsmåter eller regler som skal følges under webutvikling ved bruk av JSF relatert til forskjellige omfangsbønner er:
- Begynn med @RequestScoped Bean til forretningsdata og tilstand mister, og velg deretter neste omfang på høyere nivå.
- For å stoppe deling av data eller tilstand mellom alle brukere, unngå @ApplicationScoped-omfang.
- For å stoppe deling av data eller tilstand mellom alle nettleserfaner, unngå @SessionScope.
- For å forhindre tap av data og tilstand over HTTP-forespørsler, unngå @RequestScope.
- Visnings-, flyt-, økt- og samtalebønner har ingen innvirkning på brukerne.
- Unngå å kalle forretningslogikk i getter-metoder for JSF-bønner.
- Bruk resultat satt i en verdiegenskap.
- @PostConstruct-merket metode brukes til å beregne resultatsettet.
Q # 32) Beskriv arkitekturen til JavaServer Faces
Svar: JavaServer Faces implementerer MVC-mønster, komponenter er separat definert, med annen logikk.
- Vis komponent for presentasjonslogikk, og
- Modellkomponent for forretningslogikk er implementert.
- Kontrollerkomponent styrer navigering fra ett syn til et annet og utfører forskjellige modellmetoder.
Kontroller-delen består av
- Kontroller servlet dvs. Ansikter Servlet
- Sentralisert konfigurasjonsfil, dvs. ansikter-config.xml
- Sett med hendelsesbehandlere for webapplikasjoner.
Q # 33) Hva er forskjellene mellom JSF og Spring framework?
Svar: Forskjellene mellom de to er listet opp nedenfor:
defekte livssyklus i programvaretesting
Java Server Faces | Vår |
---|---|
JSF brukes til å lage komponentbaserte brukergrensesnitt for webapplikasjoner. | Spring bruker DispatcherServlet og design-mønster for modellvisning-kontroller for webapplikasjon. |
Den har modne brukergrensesnitt rammeverk omfattende og rik forespørsel livssyklus server side komponenter | Spring tilbyr applikasjonsrammeverk for frittstående applikasjoner, nett og distribuerte applikasjoner. |
JSF tillater integrering med HTML, JSP for å utvikle visningskomponent av modellvisningsstyring. | Hastighet, fri markør osv. Brukes til visningskomponent med vårramme |
Den har ikke forhåndsdefinert støtte for å integrere JDBC, EJB, Hibernate og RMI | Den tilbyr forhåndsdefinert støtte for JDBC, EJB, Hibernate, RMI etc. |
JSF er en tung vektramme | Våren er en lettvektsramme |
Den har mer API-avhengighet og har ingen støtte for POJO-implementeringer | Den har POJO-implementeringer og mindre API-avhengighet. |
Konklusjon
JavaServer Faces er et Java-nettbasert rammeverk som designer brukergrensesnittkomponenter ved hjelp av administrerte bønner, bakbønner, fasetter og andre tilpassede biblioteker som primære ansikter eller isflater.
Applikasjonsarkitekter, utviklere, komponent- og sideforfattere bør være godt kjent med forskjellige rammer som Java Server Faces, i tillegg til andre rammer som Spring, Hibernate og Struts.
Denne JSF-intervjuopplæringen hjelper deg med å forberede deg på de fleste JSF-intervjuer.
Anbefalt lesing
- Topp 20 Java-intervjuprogrammer for programmering og kodingsintervju
- JSP intervju spørsmål og svar (Oppdatert 2021)
- 30+ TOPPLE Servettintervjuspørsmål og svar (2021 LISTE)
- Topp 50+ Core-intervjuspørsmål og svar
- 30+ Topp Java-samfunnsspørsmål med svar (2021 LISTE)
- 25 beste Java-testrammer og verktøy for automatiseringstesting (del 3)
- Topp 20+ .NET intervju spørsmål og svar
- Intervju Spørsmål og svar