Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.kietna.tcpclient;
- /*
- Translated by Nguyen Anh Kiet
- Source: http://www2.ic.uff.br/~michael/kr1999/2-application/2_06-sockettcp.htm
- Cách đọc: Đọc giải thích ở trên, Code ở dưới.
- */
- /*
- java.io Chứa các classes phục vụ input và output streams như BufferedReader and DataOutputStream
- java.net chứa các class hỗ trợ về mạng. Cụ thể là Socket classes (ServerSocket hoặc clientSocket )
- */
- import java.io.*;
- import java.net.*;
- public class main {
- public static void main(String[] args) throws IOException {
- /*
- Khai báo 2 string
- sentence là String User nhập vào từ bàn phím
- modifiedSentence là String nhận được từ server
- */
- String sentence;
- String modifiedSentence;
- //Tạo một đối tượng Stream có tên là inFromUser kiểu BufferedReader. Input stream này được khởi tạo với kiểu System.in cho phép người dùng nhập từ bàn phím
- BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
- /*
- Tạo một đối tượng kiểu Socket có tên là clientSocket.
- Đồng thời cũng khởi tạo một kết nối TCP từ client và server
- Hostname được thay bằng hostname hoặc ip của server
- Client sẽ tiến hành truy vấn DNS để lấy IP của server
- Số hiệu cổng là 6789 phải trùng với cổng ở server
- Địa chỉ IP cùng với số hiệu cổng sẽ xác định tiến trình của Server
- */
- Socket clientSocket = new Socket("hostname", 6789);
- /*
- Tạo 2 đối tượng Stream đính kèm với Socket
- outToServer cung cấp đầu ra cho tiến trình tới socket
- inFromServer cung cấp đầu vào cho tiến trình từ socket
- */
- DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
- BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
- // Lấy thông tin người dùng nhập từ bàn phím và lưu vào String sentence
- sentence = inFromUser.readLine();
- // Gửi thông tin của String Sentence tới outToServer stream qua kết nối TCP. Sau đó sẽ đợi server trả kết quả về.
- outToServer.writeBytes(sentence + '\n');
- // Khi thông tinh được trả về từ Server, sẽ được truyền qua sream inFromServer và được ghi vào String modifiedSentence. Thông tin được nhận về liên tục cho tới khi hết.
- modifiedSentence = inFromServer.readLine();
- //In ra đoạn kí tự modifiedSentence lấy về từ server
- System.out.println("FROM SERVER " + modifiedSentence);
- //Đóng kết nối với server
- clientSocket.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement