打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
创建简单服务器

实现目标:创建一个简单的服务器,可以将客户机发来的消息显示出来,之后再返回给客户机。

①使用java创建一个服务器的指令非常简单,就是在指定窗口上创建一个java.net.ServerSocket对象。代码如下:

private ServerSocket server;

public void setUpServer(int port) {

try {

//创建服务器

server = new ServerSocket(port);

System.out.println("已创建服务器" + port);

} catch (IOException e) {

e.printStackTrace();

}

}

②服务器创建之后就相当于进入了待机状态,等待其他的客户机来连接;

// 让服务器进入等待状态

Socket client = server.accept();

需要注意的是:在调用 server.accept()方法时,程序就会“阻塞”在这里——直到有一个客户机连接上来,这个方法才会返回一个 Socket 类的对象来代表服务器与客户机之间的连接

③要接受客户机发来的消息并返回给客户机,就必须创建输入输出流对象。

向输入流中写入的数据,就被发向了客户机;从输出流对象中读取数据,读到的就是客户机发来的数据;

// 从连接对象上获取输入输出流对象

OutputStream out =client.getOutputStream();

InputStream in = client.getInputStream();

out.write("欢迎来到聊天室\r\n".getBytes());

out.write("输入quit退出\r\n".getBytes());

④使用输入输出流进行对数据的读写操作,在这里实现了一次读取一行字符串的功能,直至按下回车输出;

String s = new String();

while (true) {

char ch = (char) in.read();

System.out.println();

System.out.print("用户输入:" + ch);

if (ch == '\n') {

out.write(("服务器收到:\r" + s).getBytes());

out.write("\r\n".getBytes());

s = new String();

}

s = s + ch;

if (s.contains("quit")) {

break;

}

}

out.flush();

out.close();

⑤使用telnet来测试创建的服务器

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
详解Java 套接字(Socket)
Java Socket重要参数讲解
Java网络通信 TCP、UDP
使用非阻塞ServerSocketChannel、SocketChannel代替Serve...
读懂Java中的Socket编程
网络编程基础知识
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服