Junior
Milleks kasutatakse servletite atribuute ja kuidas nendega töötada?
sobes.tech AI
Vastus AI-lt
Servletite atribuudid kasutatakse andmete salvestamiseks ja edastamiseks erinevate komponentide vahel veebirakenduses määratletud nähtavuspiirkondades:
Peamised nähtavuspiirkonnad atribuutidele:
- HttpServletRequest: Andmed on saadaval ainult ühe HTTP-päringu töötlemise ajal.
- HttpSession: Andmed on saadaval kogu kasutaja sessiooni jooksul serveris.
- ServletContext: Andmed on saadaval kogu rakenduse elutsükli jooksul.
Andmetega töötamiseks kasutatakse vastavaid objekte:
- Päringu atribuutide jaoks:
HttpServletRequest - Sessiooni atribuutide jaoks:
HttpSession - Konteksti atribuutide jaoks:
ServletContext
Peamised meetodid atribuutidega töötamiseks (setAttribute, getAttribute, removeAttribute):
// Päringu atribuutidega töötamine
HttpServletRequest request = ...;
request.setAttribute("requestAttribute", "päringu väärtus"); // Atribuudi seadmine
String requestValue = (String) request.getAttribute("requestAttribute"); // Väärtuse saamine
request.removeAttribute("requestAttribute"); // Atribuudi eemaldamine
// Sessiooni atribuutidega töötamine
HttpSession session = request.getSession(); // Sessiooni saamine
session.setAttribute("sessionAttribute", "sessiooni väärtus");
String sessionValue = (String) session.getAttribute("sessionAttribute");
session.removeAttribute("sessionAttribute");
// Konteksti atribuutidega töötamine
ServletContext context = request.getServletContext(); // Konteksti saamine
context.setAttribute("contextAttribute", "konteksti väärtus");
String contextValue = (String) context.getAttribute("contextAttribute");
context.removeAttribute("contextAttribute");
Atribuutide kasutamine võimaldab komponentidel (servletid, JSP-d, filtrid) vahetada teavet ilma otsese sõltuvuseta. Näiteks võib servlet määrata päringu atribüüdi, mida seejärel loetakse ja kuvatakse JSP-s. Sessiooni atribuudid võivad salvestada teavet sisseloginud kasutaja kohta, mis on kättesaadav erinevatel lehtedel rakenduses.