当前位置:首页 > CN2资讯 > 正文内容

java tls服务器 java tcp服务器

4天前CN2资讯


服务器端: TCPServer.java

package com.zhanshen.demo; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import .ServerSocket; import .Socket; /** * TCP通信的服务器端,接收客户端发的数据 * .ServerSocket * * 构造方法: * ServerSocket(int port) * * 服务器必须明确,必须知道是哪个客户端请求的服务器 * 所以可以使用accept方法获取请求到的客户端对象socket * * 成员方法: * socket accept() 侦听并接收到此套接字的链接 * * 服务器实现步骤: * 1. 创建服务器ServerSocket 对象和系统要制定的端口 * 2. 使用ServerSocket对象中的方法accept 获取请求的客户端对象Socket * 3. 使用Socket对象中的getInputStream 获取网络字节输入流InputStream对象 * 4. 使用网络字节输入流InputStream对象中的方法 read 读取客户端发送的请求 * 5. 使用socket对象中的方法getOutputStream 获取网络字节输出流OutputStream对象 * 6. 使用网络字节输出流 OutputStream对象中的write 来给客户端回写数 * 7. 释放资源 Socket和ServerSocket * */ public class TCPServer { public static void main(String[] args) throws IOException { //1. 创建服务器socket ServerSocket serverSocket = new ServerSocket(8888); //2. 使用ServerSocket对象中的accept方法 获取客户端的socket Socket socket = serverSocket.accept(); //3. 使用Socket对象中的getInputStream 获取网络字节输入流InputStream InputStream inputStream = socket.getInputStream(); //4. 使用网络字节输入流InputStream 对象中的read 获取客户端发送的数据 byte[] bytes = new byte[1024]; int len = inputStream.read(bytes); System.out.println(new java.lang.String(bytes, 0, len)); //5. 使用socket对象中的方法getOutputStream 获取字节输出流 OutputStream outputStream = socket.getOutputStream(); //6. 回写数据 outputStream.write("收到. thank you".getBytes()); //7. 释放资源 socket.close(); serverSocket.close(); } }

客户端: TCPClient.java

package com.zhanshen.demo; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import .Socket; /** * TCP通讯的客户端,向服务器发送连接请求,给服务器发送数据,读取服务器回写的数据 * 表示客户端的类 java.next.Socket * 套接字: 包含IP地址和端口号的网络单位 * * 构造方法: * Socket(String host, int port) * host: 服务器主机的名名称或者IP * 成员方法: * OutputStream getOutputStream() 返回此套接字的输出流 * InputStream getInputStream() 返回此套接字的输入流 * void close() 关闭套接字 * * 实现步骤: * 1. 创建客户端对象socket 构造方法中绑定服务器的IP地址和端口号 * 2. 使用getOutputStream() 获取网络字节输出流OutputStream对象 * 3. 使用网络字节输出流OutputStream 对象中的方法write , 检查服务器发送数据 * 4. 使用socket对象中的getInputStream 获取网络字节流InputStream对象 * 5. 使用网络字节输入流InputStream对象中的read方法,读取服务器回写的数据 * 6. 释放资源 */ public class TCPClient { public static void main(String[] args) throws IOException { //1.创建一个客户端对象 Socket 构造方法绑定服务器的IP和端口号, 用本地做测试,也可以换成你的服务器IP Socket socket = new Socket("127.0.0.1", 8888); //2.使用Socket对象中的方法OutputStream() 获取网络字节输出流 OutputStream outputStream = socket.getOutputStream(); //3.使用网络字节流OutputStream对象中的方法write 向服务器发送数据 outputStream.write("hello world".getBytes()); //4. InputStream inputStream = socket.getInputStream(); //5 byte[] bytes = new byte[1024]; int len = inputStream.read(bytes); System.out.println(new String(bytes, 0, len)); //6/ socket.close(); } }


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/20911.html

    分享给朋友:

    “java tls服务器 java tcp服务器” 的相关文章

    如何解决甲骨文IP被墙的问题及有效方法

    谈到甲骨文,大家可能会联想到古老的文字和悠久的历史,然而随着信息技术的飞速发展,甲骨文的应用已经不仅仅局限于文化研究。在数据存储、信息管理等领域,甲骨文的IP(互联网协议)在全球范围内发挥着重要的作用。不幸的是,现如今许多用户却发现自己无法正常访问这些IP。这就是我们所说的“甲骨文IP被墙”的现象。...

    AWS VPS Free: 如何利用AWS Free Tier免费服务轻松构建云计算项目

    当我第一次接触AWS (亚马逊网络服务) 的时候,最吸引我的就是他们提供的各种免费的VPS服务。AWS的VPS免费服务实际上是一种叫做AWS Free Tier的计划,它允许用户在一定条件下使用AWS的多种服务而无需支付费用。这项计划的意义在于,它为刚入门的开发者和小型企业提供了一个绝佳的机会,能够...

    Rndc2的线路怎么样?全面评测RackNerd洛杉矶DC02机房

    Rndc2的基本线路信息 说到Rndc2的线路,首先让我跟大家分享一下它的基本信息。这个线路的核心在于RackNerd洛杉矶DC02机房,位置恰好在美国西海岸的洛杉矶。成立于2019年的RackNerd,以其价格优势著称,给我们提供了比较便宜的美国VPS选择,最低年付大约10美元,这对于很多希望节省...

    使用getenforce命令管理SELinux执行模式的技巧与经验

    getenforce的基本概念 当我开始接触Linux系统的时候,SELinux这个名字总是让我感到神秘。经过逐渐的探索,我了解到SELinux(Security-Enhanced Linux)是一个强大的安全模块,它为Linux系统提供了细致的访问控制。这时候,getenforce命令便进入了我的...

    跑步的全面指南:基础知识、路线选择与心理技巧

    跑步的基础知识 跑步,这项简单又有效的运动,拥有着悠久的历史和丰富的文化背景。追溯到古代,跑步不仅是人类生存的必要技能,更是一项重要的竞技活动。历史上,古希腊的奥林匹克运动会中,长跑是最受欢迎的项目之一。而在中国,长跑也早在古代就已经成为士兵训练和民间竞技的一部分。随着时代发展,跑步逐渐演变为一种大...

    莱卡云:高性价比云服务器解决方案,助力企业发展

    莱卡云概述 莱卡云,这个名字你或许已经听说过。成立于2019年,它在云计算服务领域迅速崭露头角,成为一些企业的首选合作伙伴。凭借持有的多个《中华人民共和国增值电信业务经营许可证》,莱卡云有效地展开了多种多样的服务,充分满足了市场需求。与三大公有云的合作让它在竞争激烈的市场中站稳了脚跟,提供的解决方案...