java 简单服务器_如何实现一个简单的 Java 服务器?

本文在 nodelover.me 同步发布。

基础要点

服务器编程,其实就是 Socket 编程,而 HTTP 请求是一种特殊的 Socket,要实现监听某一个端口接受请求,我们就必须要用到Java 的ServerSocket类。

我们看一下它的构造器

public ServerSocket(

int port,

int backlog,

InetAddress bindAddr

) throws IOException

port 监听端口

backlog 监听队列长度

bindAddr IP 地址

ServerSocket有一个队列,存放还没有来得及处理的客户端Socket,这个队列的容量就是backlog的含义。

那么客户端的 socket 连接过来,我们如何拿到 socket 呢?

答案就是 accept, 这个方法是在 ServerSocket 的实例上面。

public Socket accept() throws IOException {

if (isClosed())

throw new SocketException("Socket is closed");

if (!isBound())

throw new SocketException("Socket is not bound yet");

Socket s = new Socket((SocketImpl) null);

implAccept(s);

return s;

}

accept 方法就是创建了一个空的 Socket 然后交给

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值