Che cosa (se presente) è la differenza tra la memorizzazione di una variabile nel ServletContext e il fatto di averlo come membro statico pubblico di una delle classi?Ambito contesto servlet vs variabile globale
Invece di scrivere:
// simplified (!)
int counter = (Integer)getServletContext().getAttribute("counter");
counter++;
this.getServletContext().setAttribute("counter", counter);
Perché non basta avere:
// in class MyServlet
public static int counter = 0;
// in a method somewhere
MyServlet.counter++;
(ignorare problemi di concorrenza, per favore, questo è solo un esempio stupido)
Da quello che posso dire , queste due opzioni si comportano allo stesso modo in Tomcat. C'è qualcosa di meglio nell'usare la prima opzione?
possiamo memorizzare permanentemente il valore in per un nome particolare, in modo che l'accesso successivo a quel parametro fornisca il valore aggiornato, ad esempio la prossima chiamata di getServletContext(). GetInitParameters ("nome"); fornirà il valore aggiornato che è stato fatto dall'ultimo programma? –
Ars