Sa continuam cu intrebarile pentru interviuri tehnice in Java cu ceva Servlets. Aici si aici mai multe (sa nu va inchipuiti ca pun toate intrebarile astea
)
* Cand spun Servlet mai jos ma refer la HTTP Servlet!
** Raspunsurile pot fi mai largi, intrebarile vor fi mai concrete, aici subliniez doar esenta!
Intrebare: Ce e un HTTP Servlet? Cum opereaza?
Raspuns: Handler de requesturi HTTP, implementarea modelului request-response. Prelucreaza requesturi venite de la client generand apoi response-uri.
Intrebare: Metode din servlet, ce fac ele?
Raspuns:
- init () , destroy () – managementul resurselor folosite de-a lungul vietii unui Servlet (alocare/dezalocare resurse)
- service() primeste requesturi http si le dispatche-uieste spre doXXX()
- doGet(), doPost() – managementul requesturilor de tip GET respectiv POST
- Request de tip PUT (doPut) – uploadul fisierelor pe server
- etc.
Intrebare: Ce contine un request?
Raspuns:
- Informatii generale despre client (IP, cookie-uri etc.)
- Parametrii sumbit-ati in forma
Intrebare: Parameter si Attribute pe request/session, diferenta!
Raspuns: Parametru = Valoare submitata de user si salvata intr-un form, valorile sale nu pot fi alterate.
Atribut = Un Obiect salvat pe request (care nu provine din submitarea unui form HTML) si a carui valoare poate fi alterata.
Intrebare: Diferenta intre salvarea unui obiect pe request/sesiune?
Raspuns: In mare obiectele salvate pe request sunt retinute numai la prima pagina (sau pana cand se primeste response-ul pentru requestul respectiv). Obiectele salvate pe sesiune pot fi folosite atata timp cat sesiunea este activa
Intrebare: Cate instante de servlets se creeaza in general? Cand este creata o instanta a unui Servlet?
Raspuns: Una. Cand porneste serverul sau la primul request care foloseste Servletul respectiv (setabil in descriptor: load-on-startup).
Intrebare: Sunt Servletii threadsafe?
Raspuns: Nu. De aceea trebuie sa sincronizam “manual” metodele cu acces concurent la resurse.
HTML:
Intrebare: Atributele tagului FORM!
Raspuns:
- method: metoda prin care se submite (ie. “GET”, “POST” etc.)
- action: URL-ul folosit pentru procesarea requestului.
JavaScript:
Intrebare: Gaseste un div intr-un fisier HTML si schimba-i textul din interior.
Raspuns: document.getElementById, .innerHTML=”…”
AJAX:
Intrebare: La ce se foloseste?
Raspuns: Submit asincron de requesturi: XML prin HTTP
Intrebare: Cum opereaza, implementare?
Raspuns: Pe client se obtine obiectul XmlHttp, se trimite requestul, stadiul procesarii poate fi urmarit prin intermediul obiectului XmlHttp, se efectueaza update-ul pe client.
JSP/JSTL:
Cu astea o sa revin alta mai pe larg in mare intreb:
Diferenta intre include si import, diferenta intre forward si redirect, cum scriu cod Java in Jsp, taguri JSP, cum ma adresez unui Bean din JSP. Pe partea de JSTL: tipuri de taguri (c, x, sql, fn, fmt) si cum opereaza cateva dintre ele (ie. ).