Я создаю реализацию servlet.Filter
, в которой я ищу идентификатор пользователя в базе данных на основе IP-адреса перед отправкой запроса на сервлет.Есть ли синхронизированный И отсортированный объект карты (LinkedHashTable)?
Я хочу, чтобы мой фильтр помещал входящие запросы в объект, похожий на карту, если уже есть запрос с того же IP-адреса, который просматривается в базе данных. Затем, когда я получаю ответ от базы данных, я буду применять его ко всем запросам на этот IP-адрес и отправить их по пути к сервлету.
Объект, похожий на карту, должен быть синхронизирован, но также поддерживать порядок вставки, так что, как только я нахожу идентификатор пользователя, все запрошенные «запросы будут обрабатываться в том порядке, в котором они были получены».
Пройдя через API, есть LinkedHashMap
, который будет поддерживать порядок в порядке, но не синхронизирован, синхронизирован HashTable
, но не дает никаких указаний на то, что он будет поддерживать правильный порядок.
Есть ли какой-то объект LinkedHashTable
, который я могу использовать для этого?
Я использую Java 6.
Что вы хотите, чтобы оно было заказано, кажется, подразумевает, что вы хотите его повторить? Имейте в виду, что простая синхронизация карты * не позволяет безопасно итерации в параллельной среде. – Affe