Aký je rozdiel medzi ServletContext a ServletConfig?
sobes.tech AI
Odpoveď od AI
ServletContext predstavuje konfiguráciu celého webovej aplikácie. Je vytvorená pri spustení aplikácie a je dostupná všetkým servletom a JSP stránkam. Obsahuje informácie o ceste k aplikácii, type servera, parametroch inicializácie aplikácie a atribútoch dostupných pre všetky komponenty.
Príklad získania ServletContext:
// V servlete
ServletContext context = getServletContext();
// ... použitie kontextu
ServletConfig predstavuje inicializačné parametre konkrétneho servleta. Je vytvorená pre každý servlet počas jeho inicializácie. Obsahuje názov servleta a inicializačné parametre definované v deployment descriptor (web.xml) alebo anotáciami.
Príklad získania ServletConfig:
// V init metóde servleta
public void init(ServletConfig config) throws ServletException {
super.init(config);
String parameterValue = config.getInitParameter("someParameter");
// ... použitie config
}
Hlavné rozdiely:
| Vlastnosť | ServletContext | ServletConfig |
|---|---|---|
| Rozsah | Webová aplikácia | Konkrétny servlet |
| Počet | Jeden na webovú aplikáciu | Jeden na každý servlet |
| Vytvorenie | Pri spustení webovej aplikácie | Počas inicializácie servleta |
| Parametre | Pre celú aplikáciu | Pre konkrétny servlet |
| Dostupnosť | Dostupný z ServletConfig | Dostupný zo servleta |
Všeobecne sa ServletContext používa pre zdroje a konfigurácie dostupné verejne v celej aplikácii, zatiaľ čo ServletConfig je určený pre špecifické nastavenia každého servleta. Z ServletConfig je možné získať odkaz na ServletContext.