Есть ли причина, по которой переменная не может быть создана в Java ServletContextListener, и ее значение устанавливается и получается как любой другой.У меня есть ArrayList в SCL, а метод в другом классе обновляет ArrayList так часто, используя статические методы get и set в самой SCL.Здесь я предпочитаю не использовать ServletContext для хранения ArrayList.
Никакой новый экземпляр слушателя не создается вообще.
Код в SCL похож на приведенный ниже:
private static ArrayList<String> strList;
@Override
public void contextInitialized(ServletContextEvent contextEvent) {
ArrayList<String> temp = someOtherMethod();
setStrList(temp);
}
@Override
public void contextDestroyed(ServletContextEvent contextEvent) {
}
public static ArrayList<String> getStrList() {
// ...
return strList;
}
public static void setStrList(ArrayList<String> temp) {
this.strList = temp;
// ...
}