Новое в апплетах / сервлетах - вызов методов Java из функций JavaScript
Извиняюсь, если это является основным или был дан ответ - я никогда раньше не использовал апплеты / сервлеты и не мог найти всю нужную мне информацию путем поиска.
Я работаю с командой, чтобы создать простой музыкальный тасовщик. Функции shuffler состоят в том, чтобы повышать, понижать или пропускать текущую воспроизводимую песню. Другие члены команды написали эти функции на Java, но я отвечаю за отображение в пользовательском интерфейсе веб-приложения с использованием HTML, JavaScript и апплета / сервлета. Он работает на локальном хосте Tomcat v7.0.
Функции upvote/downvote генерируют пользовательские предпочтения на основе тегов, связанных с текущей воспроизводимой песней. Затем пользовательские настройки запускаются с помощью алгоритма, чтобы определить, какую песню следует добавить в список воспроизведения далее (подробнее о списке воспроизведения позже). Эти функции не являются моей заботой, потому что мне не нужно извлекать из них какую-либо информацию.
Функция пропуска должна сначала удалить текущую воспроизводимую песню из передней части списка воспроизведения, который управляется как очередь размером 5. Затем она запустит алгоритм, чтобы поставить новую песню в очередь в конец очереди. Для этой функции мне нужно вернуть новую очередь списка воспроизведения после того, как она была удалена из очереди и поставлена в очередь.
Мои вопросы:
- Подойдет ли для этого апплет или сервлет?
- Если используется несколько классов Java, нужно ли создавать сервлет для каждого из них? Пример: класс Song используется для создания объектов (песен), которые передаются через очередь (список воспроизведения). Нужно ли создавать апплет / сервлет для песни и класса с функциями upvote/downvote/skip?
- Предоставляют ли мне апплеты / сервлеты доступ к глобальным переменным, используемым в классах Java, или только к возвращаемым переменным? (При пропуске мне нужен новый список воспроизведения, возвращенный в функцию JavaScript, чтобы я мог отобразить его, или я могу просто отобразить очередь Java и загрузить ее div при пропуске)
Более подробная информация доступна в случае необходимости. Спасибо за любую помощь.