top 30 jsf interview questions
Denna handledning ger vanliga frågor om Java Server Faces eller JSF-intervjufrågor och svar med förklaringar som hjälper dig att förbereda dig för intervjun:
Det är viktigt för Java Developer att ha arbetskunskap i en eller flera populära Java-ramverk som Spring, Hibernate, Struts och Java Server Faces (JSF).
JSF är en av Java-ramarna som snabbt hjälper till att designa komponenter för webbgränssnitt.
JSP var en Java-teknik som använde Java API, implicita objekt och anpassade taggar för att utveckla dynamiskt webbinnehåll, medan Java Server Faces (JSF), ett Java-baserat webbapplikationsramverk för att utveckla webbaserade användargränssnittskomponenter.
JSF har hanterat bönor, ansiktslåt, anteckningar och verktygsbibliotek som primära ansikten och Omni-ansikten eller isytor för att utveckla mallbaserade komponenter på serversidan.
Vad du kommer att lära dig:
Java-server ansikten
Java Server Faces-teknologin erbjuder API för att bygga återanvändbara komponenter för användargränssnitt på webbsidorna. Det ansluter komponenter till applikationsdatakällan och klientgenererade händelser till händelsehanterare på serversidan, upprätthåller UI-tillstånd över flera serverförfrågningar samt implementerar anpassade komponenter.
JSF tillhandahåller kärnbibliotek, standard HTML-inmatningselement som bas-UI-komponenter, baserade på olika enheter och klienttyp säger HTML-webbläsare, WAP eller trådlösa enheter, ger renderingskapacitet till UI-komponenter.
Vanliga frågor om JSF-intervju
F # 1) Vad är Java Server Faces (JSF)?
Svar: Det är ett Java-ramverk baserat på MVC-design som har rikt API- och taggbibliotek som erbjuder skapande av serversidans användargränssnittskomponenter för webbutveckling.
JSF har ett taggbibliotek, API, Facelets och UI-komponenter och hanterade bönor för att skapa webbapplikationer.
F # 2) Vilka funktioner erbjuder Java Server Faces i webbutveckling?
Svar: Funktionerna listas nedan:
- Java-ramverk byggt över Servlet API
- UI-komponenter lagras på servern
- Händelsedriven programmeringsmodell som hanteras på servern
- Stöder flera klientenheter
- Enkel att implementera komponenter från tredje part
- Utbyggbar arkitektur
- Omfattande verktygsstöd från Borland, Exadel, Sun, Oracle, IBM, BEA, etc.
- Snabb applikationsutveckling (RAD)
- Stöder internationalisering av UI-etiketter och text
Java Server Faces-funktioner:
F # 3) Förklara JSF-livscykeln.
Svar: Livscykeln innehåller 6 faser, som förklaras nedan:
# 1) Återställ vyn: Livscykeln börjar med återställningsfasen. När man klickar på en länk eller knapp på webbsidan skickas en begäran till JSF med funktioner enligt nedan:
- Utsikten är byggd av JSF
- Ansluter händelsehanterare och validerare till komponenter i användargränssnittet
- Sparar den här vyn i FacesContext-instans
- Ger all information till FacesContext för att behandla begäran
# 2) Ansök begäran: Här skapas varje komponent från komponentträdet. Använd avkodningsmetoden som fångar och sparar nya värden från begäranparametrar. I händelse av fel under konverteringen genererar det ett felmeddelande och listar det på FacesContext. Det kommer att visa valideringsmeddelanden eller fel under återkopplingsfasen. JSF flyttar till att återge svarsfas när avkodningsmetod händelse lyssnare kallar renderResponse-metoden.
# 3) Processvalidering: Under denna fas bearbetar JSF komponentträdvaliderare, undersöker attributregler för validering och jämför dem med komponentens lagrade lokala värde. I händelse av ogiltigt lokalt värde lägger JSF till ett felmeddelande i FacesContext-instansen, visar samma sida med ett felmeddelande och med JSF-livscykeln som går längre mot renderingssvarfasen.
# 4) Uppdatering av modellvärde: Efter att JSF har verifierat giltiga data ställer den in motsvarande objektegenskaper på serversidan till komponentens lokala värden och uppdaterar bönegenskaperna, vilket motsvarar ingångskomponentens värdeattribut. När renderResponse från den aktuella instansen av FacesContext anropas av updateModels-metoder, flyttar JSF till render-svarsfasen.
# 5) Anropa ansökan: Programhändelser som att skicka formulär eller vidarebefordra till en annan sida hanteras av Java Server Faces under denna fas.
# 6) Gör svar: Om applikationen har JSP-sidor begär JSF applikationsservern att göra sidan och därmed lägger till komponenter på sidan i komponentträdet. Annars behöver ett redan byggt komponentträd inte lägga till några komponenter; JSP-container flyttar taggar och gör komponenter. Svarstillståndet sparas efter att visningsinnehållet har renderats, vilket gör att efterfrågningar kan få åtkomst till tillståndet och dess tillgänglighet för att återställa visningsfasen.
F # 4) Vilken betydelse har hanterade bönor i Java Server Faces?
hur man konverterar youtube-videor till wav-filer
Svar: Managed Beans är Java-bönor som innehåller getter- och settermetoder och har en affärslogik utformad i den. Det kan valfritt ha en bakböna. De fungerar som en modell för UI-komponenter i MVC-ramverket.
För JSF 1.2 är det nödvändigt att registrera dem i JSF-konfigurationsfilen, ansikten-config.xml, medan kommentarer från och med JSF 2.0 används för att registrera hanterade bönor.
F # 5) Vad är omfattningen av hanterade bönor?
Svar: Managed Beans är en Java-klass som består av en uppsättning metoder och egenskaper för getter / setter. Det fungerar som en modell för JSF-ramverket och erbjuder funktioner som,
- Validering av komponentdata
- Hantera körningen av en komponenthändelse
- Bearbetar för att bestämma vilken sidapplikation som navigerar nästa
- JSF använder hanterade bönor antingen genom att konfigurera dem till en XML-fil eller genom anteckningar.
Följande omfattning används för hanterad bönaklass:
- Ansökan
- Session
- Se
- Begäran
- Ingen
- Beställnings
F # 6) Vad är en Facelet?
Svar: Facelets är lätta siddeklarationsspråk som använder HTML-stilmallar för att bygga komponentträd för att bygga Java-servers ansiktsvyer.
Några av Facelets-funktionerna listas enligt nedan:
- Den använder XHTML för att skapa webbsidor.
- Förutom JSF- och JSTL-taggbibliotek, erbjuder det Facelets-taggbibliotek.
- Stöd för uttrycksspråk, komponent och sidmallar.
F # 7) Förklara fördelarna med att använda Facelet.
Svar: Fördelarna är följande:
- Snabb kompileringstid
- Högpresterande rendering
- Utökar funktionaliteten till komponenter och andra objekt på serversidan via anpassning
- Stöd för återanvändning av kod genom kompositkomponenter och mallar
- EL-validering av kompileringstid
F # 8) Lista Facelet-taggar som används i Java Server Face.
Svar: Några av Facelet-taggarna som används i JSF listas nedan:
- ui: komponent definierar den skapade komponenten och lägger till komponentträdet.
- ui: komposition definierar sidans sammansättning, använder mallar valfritt och ignorerar innehåll utanför.
- ui: felsöka definierar felsökningskomponent som skapats och läggs till i komponentträdet.
- ui: dekorera liknar komponenttagg, överväga innehåll utanför denna tagg.
- ui: definiera används för att definiera innehåll infogat på sidan med en mall.
- ui: fragment liknar komponent och dekorerar taggen. Det tar hänsyn till innehåll utanför denna tagg.
- ui: inkludera återanvänder och inkapslar flera sidinnehåll.
- ui: infoga som namn infogar innehåll i en mall.
- ui: sluta skicka parametrar till den inkluderade filen.
- ui: upprepa ett alternativ för loop-taggar, som c: forEach eller c: dataTable.
- ui: ta bort används för att ta bort innehåll från en sida.
F # 9) Listtyper av sidnavigering som JSF stöder.
Svar: JSF stöder följande sidnavigeringstyper:
- Villkorlig navigering
- Framåt kontra omdirigeringsnavigering
- Implicit navigering
- Navigering via hanterad böna
- Navigering via omdirigeringsnavigering
F # 10) Beskriv olika textfältmärken som erbjuds av JSF.
Svar: Olika textfältmärken är som beskrivs nedan:
- infogar textrutan intill etikettfältet.
- används som en behållare för att skriva in många tecken.
- är en typ av textfält som används för lösenordsfält så att de inmatade uppgifterna inte avslöjas.
F # 11) Beskriv värdeuttryck och metoduttryck.
Svar: Värdeuttryck hämtar ett värde och anger ett värde. De delas vidare in i rvalue expression och lvalue expression. rvärde kan bara läsa data, medan värde kan läsa och skriva data.
Offentlig metod för bönan åberopas av Method expression som returnerar det resultat som krävs för att validera datakomponenten och händelseshantering.
F # 12) Vilka typer av valideringar är tillgängliga i JSF?
qa frågor och svar om automatiseringsintervjuer
Svar: Det finns två typer av valideringar i JSF, nämligen deklarativ och imperativ.
- Deklarativ valideringar åberopas med JSF-standardvaliderare eller Bean-validatorer.
- Nödvändigt valideringar är komplexa användardeklarerade validatorer som åsidosätter standardvalideringen eftersom standardvalideringsmeddelanden inte är tillräckliga i alla fall.
F # 13) Lista uttryck som JSF Expression Language stöder.
Svar: Uttryck som stöds listas nedan:
- Omedelbart värdeuttryck
- Uppskjutet värdeuttryck
- Värdeuttryck
- Metoduttryck
F # 14) Beskriv olika typer av JSF-evenemang.
Svar: Det finns huvudsakligen tre typer av JSF-händelser, nämligen Action-händelser, Value Change-händelser och Fashändelser.
- Actionhändelser genereras för användargränssnittskomponenter som kommandoknappen eller kommandohyperlänken.
- Värdeändringshändelser referenstextfält, alternativknappslistruta. Varje värdeförändring i dessa UI-komponenter anropar en värdeförändringshändelse.
- Fashändelser avfyras antingen under starten eller mot slutet av någon av de sex faserna i JSF-livscykeln.
F # 15) Förklara i detalj de databundna tabellkomponenterna.
Svar: Komponenter som är ansvariga för att visa relationsdata i tabellformat kallas databundna tabellkomponenter. märka det går igenom varje post som visas i rader, medan märka visa datakomponenter.
Några av attributen för h: datatabell är cellfyllning, cellavstånd, bgfärg och kantlinje.
F # 16) Lista validatortaggar tillgängliga i JSF.
Svar: Validator-taggarna listas nedan:
- f: validateLength används för att validera stränglängd.
- f: validateLongRange används vid validering av det numeriska värdet.
- f: validateDoubleRange används vid validering av flytvärdesintervall.
- f: validateRegex: validering jämför givet reguljärt uttryck med JSF-komponenter.
F # 17) Vad är JSF-anteckningar?
Svar: Kommentarer i JSF hjälper till att utveckla en tydlig och ren kod. Den kan användas i paket, klasser, konstruktörer, gränssnitt, fält, metoder, parametrar, variabler eller anteckningar själva.
Det finns huvudsakligen tre kategorier av anteckningar - nämligen Markörer, anteckningar för enstaka värden, fullständiga anteckningar.
F # 18) Beskriv resursbuntning.
Svar: Det är alltid bekvämt att lagra UI-etiketter, datumformat, statusmeddelanden och UI-textelement som att lagra parametrar för lokaliseringar för internationalisering etc. i egenskapsfilen istället för hårdkodning av dessa på varje XHTML-sida. Att lagra dessa konstanta värden i en fil och visa dessa värden på olika sidor kallas resursbuntning.
Distributionsbeskrivare ansikten-config.xml innehåller konfigurationsinställningar för JSF-applikationen, där vi kan konfigurera resurspaketet och spara dessa värden i det.
F # 19) Lista fördelarna med att använda JSF-ramverket.
Svar: Följande är några av de viktiga fördelarna:
- JSF-ramverket skapar snabbt användargränssnitt med sitt inbyggda UI-komponentbibliotek med en åtskillnad mellan presentation och beteende.
- Den har en rik arkitektur för hantering, bearbetning, validering av användaringångar.
- Dess händelser är integrerade med serversidan kod.
- Erbjuder pluggbar kontroll på komponentnivå.
- Stöder funktioner för tillgänglighet och internationalisering.
F # 20) Lista fördelarna med uttrycksspråk.
Svar: Uttrycksspråk erbjuder följande fördelar:
- Sidförfattare kan minimera användningen av skript på webbsidan
- Erbjud högre produktivitet
- Lätt att underhålla
- Platt inlärningskurva
- Ingår i JSP 2.0, JSF
- Användning av uttryck i olika stadier av sidans livscykel
- Ställ in externa objektdata och hämta den med hjälp av uttryck
- Metoduttryck erbjuder händelsehantering, validering och andra funktioner för JSF UI-komponenter
F # 21) Förklara vad Java Server Faces-programkatalogen kan innehålla?
pl sql intervju frågor och svar för erfaren pdf
Svar: Webbapplikationsarkivfilen (krigsfilen) i JSF-applikationen innehåller följande:
- web.xml - en konfigurationsresurs för webbapplikationsbeskrivare för webbapplikationer.
- Viktiga klasser i en uppsättning JAR-filer (Java Archive).
- Applikationsklasser, Java Server Faces-sidor, andra nödvändiga resurser som bildfiler.
- Resursfiler för applikationskonfiguration.
F # 22) Vilka typer av Facelet-taggar används i JSF 2.0?
Svar: Olika typer av taggar i JSF 2.0 är:
- Mallar erbjuda gemensamt gränssnittsstil och layout i webbapplikationerna, ui: insert, ui: define, ui: include och ui: komposition.
- Param-taggar är för att skicka parametrar till mallfilen.
- Anpassade taggar för att återge anpassat innehåll.
- Ta bort taggen används för att sluta rendera kommenterade JSF-kod på klientsidan.
F # 23) Beskriv JSF Standard-taggbibliotek
Svar: JSF-standardtaggbibliotek består av olika typer av HTML-inmatningar. Några av dem är listade nedan:
- h: inputText: Skapar HTML-textruta av texttyp
- h: inputSecret: HTML-textruta med lösenordstyp
- h: inputTextarea: Inmatningsfält för HTML-textarea
- h: inputHidden: HTML-inmatning av typ dold
- h: selectBooleanCheckbox: För en HTML-kryssruta
- h: selectManyCheckbox: För grupp av HTML-kryssrutor
- h: selectOneRadio: För enstaka HTML-alternativknapp
- h: selectOneListBox: För enstaka HTML-listruta
F # 24) Diskutera vikten av @ManagedProperty-kommentar i JSF 2.0.
Svar: Med @ManagedProperty-anteckningen kan bönan injiceras i en annan bönegendom genom att använda bönans settermetod. Vi behöver ett värdeattribut som innehåller det bönnamn som krävs för att injiceras.
F # 25) Vad indikerar @ApplicationScoped-anteckningen?
Svar: @ApplicationScoped-anteckning används för att definiera omfattningen inom vilken bönor kommer att lagras och förblir över användarinteraktion inom webbapplikationer. Hanterade bönor släpar vanligtvis för att instantiera.
För att starta applikationen scoped bönor i början av applikationen. Eager attribute görs sant i managed bean.
@ManagedBean (ivrig = sant)
@ApplicationScoped
F # 26) Lista databundna tabellkomponenter från JSF 2.0.
Svar: tagg används för att skapa datatabell och databundna tabellkomponenter i JSF består av element som Kolumn Sortering (Stigande / Fallande), Kryssrutor, Paginering.
F # 27) Lista över olika implementeringar av JSF.
Svar: Implementationerna listas nedan:
Apache MyFaces | Oracle Mojarra | OmniFaces |
---|---|---|
JSF stöder inte mellanvarutjänster som JAAS, JNDI, JMS och Java Mail | Stöder mellanvarutjänster som JAAS, JNDI, JMS och Java Mail | |
PrimeFaces | RichFaces | ICE-ansikten |
F # 28) Förklara omedelbara och återgivna attribut i JSF.
Svar: När det booleska värdet på ett omedelbart attribut är satt som sant kommer det att tvinga konverteringar, händelser och valideringsbehandling under begäran av JSF-livscykeln.
Rendered attribute skulle bestämma att komponenten ska återges eller inte visas, den använder aritmetiska bokstäver och operatorer med rvalue-uttryck och inte med lvalue-uttryck.
F # 29) Lista fördelar med JSF-datatabellstaggar.
Svar: JSF-datatabellmärken används för att visa relationsdata i tabellformat på JSF-visningssidor.
Fördelarna med datatabellstaggarna är:
- För att visa data kan datatabellen iterera över matriser eller värdesamling.
- Datatabellstaggar erbjuder attribut för att ändra dess data som visas på JSF-visningssidan.
F # 30) Skill mellan JSF 1.0 och JSF 2.0.
Svar: Skillnader mellan de två listas nedan:
JSF1.2 | JSF 2.0 |
---|---|
Hanterade bönor registreras i ansikten-config.xml med JSF 1.2 | Kommentarer används för att registrera hanterade bönor i JSF 2.0 |
I JSF 1.0 är Servlet konfigurerad i web.xml med url-mönster som / ansikten / * | I JSF 2.0 är Servlet konfigurerad i web.xml med url-mönster som * .xhtml |
JSF 1.2 släpptes med EL och förbättrad och enhetlig visningshantering för att avlägsna tät koppling med JSP. | JSF 2.0 erbjuder stöd för GET-förfrågningar, nytt visningsomfång, användning av annotatios, generics, inkluderar facelets som standardvy istället för JSP och resurshantering |
JSF 1.0 använder API för anpassade komponenter | JSP utfas i JSF2.0 och ersätts med Facelets (xhtml) |
F # 31) Förklara bästa metoder som används för att bygga JSF-applikationer.
Svar: Bästa metoder eller regler som ska följas under webbutveckling med JSF relaterade till olika bakgrundsbönor är följande:
- Börja med @RequestScoped Bean tills affärsdata och tillstånd försvinner och välj sedan nästa högre nivå.
- För att sluta dela data eller tillstånd mellan alla användare, undvik @ApplicationScoped scope.
- För att sluta dela data eller status mellan alla webbläsarflikar, undvik @SessionScope.
- Undvik @RequestScope för att förhindra förlust av data och tillstånd över HTTP-förfrågningar.
- View, Flow, Session och Conversation scoped bönor har ingen effekt på användarna.
- Undvik att kalla affärslogik i gettermetoder JSF-backbönor.
- Använd resultatuppsättning i en värdegenskap.
- @PostConstruct-kommenterad metod används för att beräkna resultatuppsättningen.
F # 32) Beskriv arkitekturen för JavaServer Faces
Svar: JavaServer Faces implementerar MVC-designmönster, komponenterna definieras separat, med olika logik.
- Visa komponent för presentationslogik och
- Modellkomponent för affärslogik implementeras.
- Controller-komponenten styr navigering från en vy till en annan och kör olika modellmetoder.
Styrenhet består av
- Controller servlet d.v.s. FacesServlet
- Centraliserad konfigurationsfil, dvs. ansikten-config.xml
- Uppsättning av evenemangshanterare för webbapplikationer.
F # 33) Vilka är skillnaderna mellan JSF och vårramen?
Svar: Skillnaderna mellan de två listas nedan:
Java-server ansikten | Vår |
---|---|
JSF används för att skapa komponentbaserade användargränssnitt för webbapplikationer. | Spring använder DispatcherServlet och modell-view-controller designmönster för webbapplikation. |
Den har mogna ramar för användargränssnittet omfattande och omfattande komponenter för livscykelserverns begäran | Spring erbjuder applikationsramverk för fristående applikationer, webb och distribuerade applikationer. |
JSF möjliggör integrering med HTML, JSP för att utveckla visningskomponent i modellvystyrenheten. | Hastighet, fri markör etc används för visningskomponent med fjäderram |
Det har inte fördefinierat stöd för att integrera JDBC, EJB, Hibernate och RMI | Det erbjuder fördefinierat stöd för JDBC, EJB, Hibernate, RMI etc. |
JSF är ett tungt ramverk | Våren är en lättviktsram |
Det har mer API-beroende och har inget stöd för POJO-implementeringar | Den har POJO-implementeringar och mindre API-beroende. |
Slutsats
JavaServer Faces är ett webbaserat Java-ramverk som designar användargränssnittskomponenter med hanterade bönor, backing beans, Facelets och andra anpassade bibliotek som primära ansikten eller isytor.
Applikationsarkitekter, utvecklare, komponent- och sidförfattare bör vara väl förtrogna med olika ramar som Java Server Faces, förutom andra ramar som Spring, Hibernate och Struts.
Denna JSF-intervjufrågor handledning hjälper dig att förbereda dig för de flesta JSF-intervjuer.
Rekommenderad läsning
- Topp 20 Java-intervjuprogram för programmering och kodningsintervju
- JSP-intervjufrågor och svar (Uppdaterad 2021)
- 30+ TOPP Servlet-intervjufrågor och svar (2021 LIST)
- Topp 50+ Core-intervjufrågor och svar
- 30+ Top Java-samlingsintervjuer med svar (2021 LIST)
- 25 bästa Java-testramverk och verktyg för automatiseringstest (del 3)
- Topp 20+ .NET-intervjufrågor och svar
- Intervjufrågor och svar