Это мессаджер на Java который должен был заменить телеграмм я сделал по фану для переписки в стенах универа.
Проект использует Apache NetBeans IDE 11.1 клиентская часть на Ant. Возможно использование более старых версий NetBeans. Проект представляет собой клиент серверное приложение. Импортируйте оба .zip файла в среду разработки. Затем запускаете TelegaServer. Это серверная часть приложения она работает в режиме консоли. Затем откройте TelegaClient. Это клиентская часть приложения. По умолчанию клиент подключается по ip к localhost. Если необходимо изменить то поменяйте константу ip в классе MainForm.java.
Основной целью проекта было изучение клиент серверных приложений, как они пишутся и как работает передача данных. Также мне очень хотелось иметь какой нибудь месседжер в котором можно было переписываться в универе с одногруппниками во время лекций или практических заданий.
Принцип работы крайне прост. Сервер ожидает подключений от пользователей. Когда кто то подключается, то сервер создает отдельный поток в котором обрабатывает запросы клиента. При этом сервер добавляет сокет клиента в глобальный лист сокетов Connections. Когда клиент пишет сообщение, он передает его на сервер ввиде объекта класса Message. Когда сервер принимает его, он рассылает это сообщение всем клиентам, которые берет из Connections. Когда клиенту приходит сообщение, он его выводит.
- Планировалось добавить возможность отправки картинок другим пользователям. Я планировал выводить их через Base64 строку, но как оказалось html элемент их не поддерживает.
- Проверка длины строки происходит только в клиентской части. Я конечно же понимаю что это дыра и вообще то следует проверять это и на сервере.