Изменение объекта в ArrayList, который находится в ServletContext

1

У меня есть ArrayList<Client> allClients в ServletContext как allClients. Client содержит ArrayList<Car> allCars.

Что мне было интересно, если я это сделаю:

allClients = (ArrayList<Client>) getServletContext.getAttribute("allClients");
Client client = allClients.get(0);
Car newCar = new Car("Audi");
client.addCar(newCar);

Должен ли я вернуть allClients в ServletContext?

Теги:
arraylist
servlets

1 ответ

2
Лучший ответ

Должен ли я вернуть allClients в ServletContext?

В точку. Вам нужно вернуть его обратно. В противном случае значение атрибута остается таким же, как и предыдущее.

После внесения изменений в коллекции вам необходимо переопределить старую коллекцию с измененным значением.

  • 0
    Лучше синхронизировать тоже. Это общее, изменяемое состояние - не потокобезопасно.
  • 0
    Значение атрибута (то есть ссылка на список) в любом случае не изменится, не так ли?
Показать ещё 7 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню