Java ServerSocket的服务端代码介绍

开发 后端
Java ServerSocket需要我们学习的东西还很多,但是在学习的时候有很多的问题不能解决,下面我们就看看相关的解决方案。

所谓Java ServerSocket通常也称作"套接字",有不少的时候需要我们详细的注意。接下来我们就看看什么是Java ServerSocket,希望大家有所收获。用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。

Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在 连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服 务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。

下面给出一个最简单的Socket通信的例子供初学者参考:

服务器端:

  1. ServerDemo.java   
  2. package com.lanber.socket;   
  3. import java.io.DataInputStream;   
  4. import java.io.DataOutputStream;   
  5. import java.io.IOException;   
  6. import java.net.ServerSocket;   
  7. import java.net.Socket;   
  8. public class ServerDemo {   
  9. /**   
  10. * 注意:Socket的发送与接收是需要同步进行的,即客户端发送一条信息,服务器必需先接收这条信息,   
  11. * 而后才可以向客户端发送信息,否则将会有运行时出错。   
  12. * @param args   
  13. */   
  14. public static void main(String[] args) {   
  15. ServerSocket ss = null;   
  16. try {   
  17. ss = new ServerSocket(8888);   
  18. //服务器接收到客户端的数据后,创建与此客户端对话的Socket   
  19. Socket socket = ss.accept();   
  20. //用于向客户端发送数据的输出流   
  21. DataOutputStream dos = new DataOutputStream(socket.getOutputStream());   
  22. //用于接收客户端发来的数据的输入流   
  23. DataInputStream dis = new DataInputStream(socket.getInputStream());   
  24. System.out.println("服务器接收到客户端的连接请求:" + dis.readUTF());   
  25. //服务器向客户端发送连接成功确认信息   
  26. dos.writeUTF("接受连接请求,连接成功!");   
  27. //不需要继续使用此连接时,关闭连接   
  28. socket.close();   
  29. ss.close();   
  30. } catch (IOException e) {   
  31. e.printStackTrace();   
  32. }   
  33. }   
  34. }  

以上就是对Java ServerSocket的相关介绍希望大家有所收获。

【编辑推荐】

  1. Java Socket通讯客户端代码编写教程
  2. Java Socket通讯实际操作手册
  3. Java SocketAPI关键代码详细使用介绍
  4. Java Socket通信客户端和服务器的代码介绍
  5. Java socket通信基本原理介绍
责任编辑:张浩 来源: 互联网
相关推荐

2010-03-18 17:47:07

Java 多客户端通信

2016-03-18 09:04:42

swift服务端

2024-02-01 12:12:01

2010-03-18 18:09:36

Java Socket

2013-03-25 10:08:44

PHPWeb

2012-03-02 10:38:33

MySQL

2023-11-12 21:58:41

Java“假死”

2010-03-19 09:26:34

Java Socket

2024-03-06 14:58:52

客户端微服务架构

2016-08-04 14:41:21

架构java服务端开发

2017-10-31 10:32:44

2010-08-03 09:59:30

NFS服务

2016-11-03 09:59:38

kotlinjavaspring

2021-05-25 08:20:37

编程技能开发

2023-08-08 08:17:23

VasDolly服务端参数

2021-04-26 13:20:06

Vue服务端渲染前端

2010-03-04 16:09:58

Ubuntu apac

2009-08-21 15:59:22

服务端与客户端通信

2010-11-19 14:22:04

oracle服务端

2012-10-19 10:06:04

Ubuntu Twea
点赞
收藏

51CTO技术栈公众号