Trên đây là một ví dụ đơn giản về kỹ thuật lập trình với giao thức TCP để xử lý xâu. Chúng ta thấy rằng việc xử lý xâu hoàn toàn ở phía Server, còn Client chỉ có nhiệm vụ gửi xâu và đợi kết quả. Việc xử lý xâu như thế nào là hoàn toàn do Server quyết định và một Server có thể xử lý yêu cầu của nhiều Client khác nhau.
Trong chương trình phía Server chúng ta thấy có vòng lặp while(true), vòng lặp này không bao giờ dừng trừ khi chúng ta tự tắt chương trình. Việc có vòng lặp này đảm bảo rằng phía Server luôn chạy, nếu không có while(true)chương trình sẽ chỉ phục vụ một lần. Server có thể xử lý yêu cầu từ nhiều Client cùng một lúc.
Tuy đơn giản, nhưng ví dụ trên đã minh họa đầy đủ các bước thực hiện một giao tiếp mạng bằng giao thức TCP. Chúng ta có thể xử lý các yêu cầu phức tạp hơn ở phía Server hay gửi nhiều yêu cầu hơn ở phía Client. Đó là những kiến thức thuộc kỹ thuật lập trình, hoàn toàn có thể thực hiện được. Và để gửi nhiều dữ liệu hơn ở phía Client, chúng ta cùng xem xét ví dụ phía dưới.
Ví dụ 5-4. Viết chương trình theo mô hình Client/Server. Client gửi lên Server
hai số thực và một trong bốn phép toán: cộng, trừ, nhân, chia. Server xử lý tính toán theo yêu cầu và gửi trả kết quả.
Bước 1: Lập trình phía Client
- Tạo project đặt tên là TCP_Calculator_Client.
- Trong project này tạo một JFrame Form đặt tên là Client. - Thiết kế giao diện cho Client như sau: