Tải bản đầy đủ (.docx) (3 trang)

Các bước để cài đặt chương trình Server bằng Java

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (75.03 KB, 3 trang )

Các bước để cài đặt chương trình Server bằng Java
Để cài đặt chương trình Server bằng ServerSocket ta thực hiện các bước sau:
• Bước 1
Tạo một đối tượng ServerSocket
ServerSocket ss=new ServerSocket(port)
• Bước 2:
Tạo một đối tượng Socket bằng cách chấp nhận liên kết từ yêu cầu liên kết của
client. Sau khi chấp nhận liên kết, phương thức accept() trả về đối tượng Socket thể
hiện liên kết giữa Client và Server.
while(condion)
{
Socket s=ss.accept();
doSomething(s);
}
Người ta khuyến cáo rằng chúng ta nên giao công việc xử lý đối tượng s cho một
tuyến đoạn nào đó.
• Bước 3: Tạo một luồng nhập để đọc dữ liệu từ client
BufferedReader in=new BufferedReader(new InputStreamReader(s.getInputStream()));
• Bước 4: Tạo một luồng xuất để gửi dữ liệu trở lại cho server
PrintWriter pw=new PrintWriter(s.getOutputStream(),true);
Trong đó tham số true được sử dụng để xác định rằng luồng sẽ được tự động đẩy ra.
• Bước 5: Thực hiện các thao tác vào ra với các luồng nhập và luồng xuất
• Bước 6: Đóng socket s khi đã truyền tin xong. Việc đóng socket cũng đồng nghĩa với
việc đóng các luồng.
Ví dụ: Viết chương trình server EchoServer để phục vụ chương trình EchoClient1 đã viết
ở bước 5
import java.net.*;
import java.io.*;
public class EchoServer1
{
public final static int DEFAULT_PORT=2007;


public static void main(String[] args)
{ int port=DEFAULT_PORT;
try{
ServerSocket ss=new ServerSocket(port);
Socket s=null;
while(true)
{
try{
s=ss.accept();
PrintWriter pw=new PrintWriter(new
OutputStreamWriter(s.getOutputStream()));
BufferedReader br=new BufferedReader(new
InputStreamReader(s.getInputStream()));
while(true){
String line=br.readLine();
if(line.equals("exit"))break;
String upper=line.toUpperCase();
pw.println(upper);
pw.flush();
}
}
catch(IOException e)
{
}
finally{
try{
if(s!=null){
s.close();
}
}

catch(IOException e){}
}
}
}
catch(IOException e)
{
}
}
}
Chương trình bắt đầu bằng việc tạo ra một đối tượng ServerSocket trên cổng xác
định. Server lắng nghe các liên kết trong một vòng lặp vô hạn. Nó chấp nhận liên kết bằng
cách gọi phương thức accept(). Phương thức accept() trả về một đối tượng Socket thể hiện
mối liên kết giữa client và server. Ta cũng nhận về các luồng nhập và luồng xuất từ đối
tượng Socket nhờ các phương thức getInputStream() và getOuputStream(). Việc nhận yêu
cầu từ client sẽ thông qua các luồng nhập và việc gửi đáp ứng tới server sẽ thông qua luồng
xuất.
Khởi động chương trình server
start java EchoServer1
Hình 4.6
Khởi động client
C:\MyJava>start java EchoClient1

×