Я внедрил полнофункциональную систему интернет-чата, которая включает в себя рисование, чтобы увидеть, что вы и другие люди говорите
Похоже, вы пытаетесь "вытянуть" обновления изсервер, то вы можете использовать SwingWorker, чтобы запросить сервер об обновлениях, а затем отправить обновления в графический интерфейс.Вы бы хотели, чтобы SwingWorker находился в спящем режиме, поэтому он не будет непрерывно опрашивать сервер.
Для получения дополнительной информации прочитайте раздел из учебника Swing по Рабочие потоки и SwingWorker .
Может быть, лучший дизайн для сервера должен «проталкивать» обновления клиенту, а клиент должен прислушиваться к изменениям и затем перерисовывать себя.Возможно, вам поможет раздел All About Sockets .
Редактировать:
Вот старый код, который я не просматривал более 5 лет.«Клиент» - это простая текстовая панель, которая отправляет каждый набранный символ на «сервер».Затем сервер отправляет каждый символ любому другому клиенту, который подключен к серверу.Идея в том, что сервер имеет самый современный документ.Когда один клиент отправляет изменение, все другие клиенты получают уведомление об изменении.Таким образом, все клиенты всегда содержат одинаковые данные.Ваш код должен быть проще, поскольку вы будете отправлять на сервер только полные сообщения.Чтобы запустить код, откройте окно dos и введите:
java DocumentServer 1234
Запустится сервер, который прослушивает порт 1234
Затем откройтедругое окно и введите
java DocumentClient 1234 3
Это создаст 3 клиентских фрейма, которые подключаются к серверу.Ввод любого из кадров обновит сервер.
Вы можете получить zip-файл здесь:
http://www.camick.com/java/source/echo.zip