java实现一个简单的Web服务器端程序,该程序监听TCP 80端口,能够接受传入的HTTP连接请求并进行解析,并且能够正确的响应请求,回送相关的网页。
时间: 2024-03-21 09:44:12 浏览: 17
好的,以下是一个简单的Java实现,可以监听TCP 80端口,并能够响应请求。
```java
import java.io.*;
import java.net.*;
public class SimpleWebServer {
public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(80);
System.out.println("Server listening on port 80...");
while (true) {
Socket client = server.accept();
System.out.println("Connected by " + client.getInetAddress().getHostName());
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
OutputStream out = client.getOutputStream();
String request = in.readLine();
System.out.println("Request: " + request);
String[] requestParts = request.split(" ");
String method = requestParts[0];
String path = requestParts[1];
if (method.equals("GET") && path.equals("/")) {
String response = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<h1>Hello, World!</h1>";
out.write(response.getBytes());
} else {
String response = "HTTP/1.1 404 Not Found\r\nContent-Type: text/html\r\n\r\n<h1>404 Not Found</h1>";
out.write(response.getBytes());
}
out.flush();
out.close();
in.close();
client.close();
}
}
}
```
这个程序通过ServerSocket类创建了一个TCP套接字,并绑定在80端口上,然后通过循环等待客户端连接来接收HTTP请求。当接收到HTTP请求后,程序会解析HTTP请求,并根据请求返回响应。这里只是一个简单的实现,可以根据实际情况进行修改。