Вы можете использовать локальное хранилище и использовать перехватчик для прикрепления токена в одном месте. Аналогичный вопрос возникает при переполнении стека. см. здесь
Я дам вам общие советы, чтобы вы пошли глубже.
Прежде всего, я рекомендую вам эту архитектуру, которая характерна для веб-приложений или даже настольных приложений, чтобы получить внешний интерфейс отдельно от внутреннего сервера:
Front -end (используйте Java Fx, если хотите). Учебное пособие: http://www.mastertheboss.com/jboss-frameworks/resteasy/rest-services-using-javafx-tutorial
Back-end (Java 1.8, Springboot, база данных MySQL). Пример: есть множество примеров и учебных пособий, использующих этот стек, я рекомендую блоги mykong или baeldung.
Внешний интерфейс будет связываться с сервером по HTTP-запросу через внутренний REST API, используя формат JSON или XML для обмена сообщениями. В реальной жизни есть физически разделенные, но просто создайте 2 разных Java-проекта, работающих на разных портах.
selected_date: Date
входные данные: Карта строк
размер: целое число
Вы будете постоянно преобразовывать java-объекты в строки JSON, я рекомендую вам использовать библиотеку Gson или библиотеку Jackson, которые делают это напрямую, и нет необходимости создавать JsonObject вручную. Если вы все еще хотите записать JSON в файл, преобразуйте объект java в строку (это строка с объектом, записанным в формате JSON), используя упомянутые библиотеки, а затем запишите эту строку в файл. Но я твердо верю, что если вы внедрите базу данных, будет больше практики.
Надеюсь, это поможет.