Основное ключевое слово здесь Ajax . В основном это сводится к тому, что код Javascript запускает асинхронный запрос (запрос в «фоновом режиме», чтобы клиент не видел «флэш-содержимого») на стороне сервера и в конечном итоге переходит / измените элементы в дереве HTML DOM (которое доступно через объект document
в Javascript) после получения ответа.
Для начала присоедините некоторые JS-функции к событию click
элементов, представляющих кнопки голосования вверх и вниз. Пусть эти функции JS запускают асинхронный запрос к серверу с идентификатором сообщения и статусом голосования (вверх или вниз) и соответственно изменяют элемент, представляющий число, путем обхода HTML DOM. Это в основном все.
Чтобы избежать проблем, связанных с поведением, специфичным для браузера, лучше всего использовать тщательно разработанную и поддерживаемую стороннюю платформу Javascript с аксиальными возможностями, например jQuery .
Вы просто используете JSP / Servlet далее обычным способом: JSP как технология представления / шаблона может просто использоваться для записи необходимого HTML / CSS / JS, а вывод может динамически контролироваться с помощью taglibs (например, как JSTL) и EL. Сервлет как контроллер запросов / ответов можно просто использовать для управления запросами и, в конечном итоге, выполнения действий, специфичных для запроса. Не только для страниц JSP, но и для аяксических запросов. Я рекомендую использовать Gson в сервлете, чтобы иметь возможность отправлять и / или получать JSON строки, чтобы Javascript мог обрабатывать его дальше без каких-либо трудностей преобразования.
На сайте jQuery вы можете найти множество плагинов "4th party". Здесь вы можете найти все плагины, соответствующие ключевому слову vote
. Один из них может быть полезен для вас.
Надеюсь, это поможет.