Как 2 REST-интерфейса могут совместно использовать экземплярыJAVA

Программисты JAVA общаются здесь
Anonymous
Как 2 REST-интерфейса могут совместно использовать экземпляры

Сообщение Anonymous »

Мы планируем создать «REST»-сервер, и теперь у нас возникла проблема: мы хотим, чтобы разные REST-интерфейсы обменивались информацией.
В качестве примера, чтобы прояснить ситуацию
  • У нас есть Application-Class, который сопоставляет URL-адрес: «http://.../MyRESTApplication» (с @ApplicationPath, расширить Приложение)
  • У нас есть интерфейс SessionMaker, который сопоставляет .../MyRestApplication/SessionMaker, который возвращает токен сеанса и сохраняет токен в SessionMap
  • У нас есть интерфейс DoThings, который сопоставляется с .../MyRestApplication/doThings?={token
  • У нас есть класс SessionMap, который должен хранить токены и метку времени.
Этот SessionMaker проверяет правильность пользователя и пароля и возвращает токен сеанса, если да (это работает). Предполагается хранить токен в sessionMap, чтобы DoThings мог получить к нему доступ. Но DoThings не может получить доступ к этому SessionMap, вместо этого создается новый экземпляр.

Как мы можем, чтобы SessionMaker и DoThings использовали один и тот же экземпляр SessionMap.
У меня есть 3 идеи, но я не знаю, какие именно применимо.
  • Создайте синглтоны SessionMaker и DoTHing (сейчас они есть в getClasses) в ApplicationClass. Создайте экземпляр SessionMap и передайте его обоим.
  • Попробуйте вытащить его из контекста приложения, но я не знаю, как это сделать.
  • Объедините SessionMaker и DoThings в один, но в результате получится антишаблон «Blob».
Единственный еще один вопрос, который я нашел, касается аналогичная ситуация:
Сервер REST Джерси: создание экземпляров классов ресурсов

Подробнее здесь: https://stackoverflow.com/questions/336 ... -instances

Вернуться в «JAVA»