Вам захотілося зробити свій чат? Ви вже зрозуміли, що Вам доведеться вивчити принцип сокетов? Ну тоді смію запропонувати Вам кілька простих кроків по створенню з'єднання між комп'ютерами в Інтернеті за коштами Java. Для початку не забудьте додати в вихідний код вашої програми java.net і java.io пакети.
Ось три основних етапи створення нашого застосування:- Сервер (Tim) - Створюємо новий сокет, що очікує запити від клієнта на 4444 порту.
- Клієнт (Chris) - Створюємо новий сокет, який буде конектитися до Tim на 4444 порт.
- Починаємо передачу даних між клієнтом і сокетом.
Ініціалізація клієнтського сокета виглядає наступним чином:
Тепер приступимо до передачі даних між Клієнтом і Сервером.
Завдання серверного сокета полягає в тому, щоб за один сеанс зв'язку прийняти дані від клієнта і відразу ж передати клієнту відповідь. Щоб зробити таку операцію необхідно оголосити потоки PrintWriter для виведення і потік BufferedReader для введення. Причому оголосити потоки необхідно як на сервері, так і на клієнті. Для простоти я покажу як це робиться на клієнті:
Напевно я перестарався з квітами :) Тепер PrintWriter out буде вихідним потоком, при записі в який, дані будуть направлятися в сокет. Якщо тепер виконати out.println ( "Hello"), то рядок hello буде відправлена сервера. Ну і в кінці залишилося подивитися як зробити, щоб прийом інформації на сервері йшов безперервно:
Я впевнений, що знайдеться багато людей, які не зрозуміють цю статтю. Але якщо ви прочитали і не зрозуміли як зробити простий чат, то ймовірно вам буде потрібно ще раз прочитати керівництво для початківців :).