java实现http服务端
时间: 2023-07-29 11:08:43 浏览: 41
要在Java中实现一个简单的HTTP服务器,你可以使用Java内置的HttpServer类。下面是一个简单的示例代码:
```java
import com.sun.net.httpserver.HttpServer;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetSocketAddress;
public class HttpServerExample {
public static void main(String[] args) throws IOException {
// 创建HttpServer实例,绑定在指定的主机和端口上
HttpServer server = HttpServer.create(new InetSocketAddress("localhost", 8000), 0);
// 创建处理器,用于处理HTTP请求
server.createContext("/", new MyHandler());
// 启动服务器
server.start();
System.out.println("Server is listening on port 8000");
}
static class MyHandler implements HttpHandler {
@Override
public void handle(HttpExchange exchange) throws IOException {
// 获取请求方法
String requestMethod = exchange.getRequestMethod();
// 设置响应头
exchange.getResponseHeaders().set("Content-Type", "text/plain");
// 设置响应内容
String response = "Hello, World!";
// 发送响应码和内容长度
exchange.sendResponseHeaders(200, response.length());
// 获取输出流,并写入响应内容
OutputStream outputStream = exchange.getResponseBody();
outputStream.write(response.getBytes());
// 关闭输出流
outputStream.close();
}
}
}
```
这段代码创建了一个在本地主机的8000端口上运行的简单HTTP服务器。它只有一个处理器`MyHandler`,当收到请求时会返回"Hello, World!"作为响应。
你可以根据需要进一步扩展`MyHandler`来处理不同的HTTP请求,例如处理POST请求、解析请求参数等。希望对你有所帮助!