Java网络编程---TCP

服务端

import java.io.DataInputStream;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;public class Server2 {public static void main(String[] args) throws  Exception{System.out.println("------------服务端启动--------------");//创建ServerSocket对象  为服务端注册端口ServerSocket socketServer =new ServerSocket(7777);//调用accept 方法等待客户端的链接请求Socket socket = socketServer.accept();//获取字节输入流InputStream ipt = socket.getInputStream();//把原始的字节输入流包装成数据输入流DataInputStream dis =new DataInputStream(ipt);while (true){//使用数据输入流  读取 用户发过来的信息try{String rs = dis.readUTF();System.out.println(rs);System.out.println(socket.getRemoteSocketAddress());  //客户端的地址System.out.println("------------------------");}catch (Exception e){System.out.println(socket.getRemoteSocketAddress()+"退出...");dis.close();socket.close();break;}}}
}

客户端

import java.io.DataOutput;
import java.io.DataOutputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.util.Scanner;public class Client2 {public static void main(String[] args) throws  Exception {//创建一个socket 对象  并同时请求与服务端程序的链接Socket socket = new Socket("127.0.0.1",7777);//从socket管道中获取字节流 用来发数据给服务端OutputStream os = socket.getOutputStream();//把低级的字节输出流  换成数据输出流DataOutputStream dos =  new DataOutputStream(os);//开始写数据Scanner sc =new Scanner(System.in);while (true){System.out.println("user:");String msg =sc.nextLine();if("exit".equals(msg)){System.out.println("退出会话...");dos.close();//释放连接资源socket.close();break;}dos.writeUTF(msg);dos.flush();}}
}

结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/239106.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

josef约瑟 DB-1电压回路断相闭锁继电器100V 5A 嵌入式安装

DB-1电压回路断相闭锁继电器 1 用途 DB-1型闭锁继电器,是在电压回路发生断路而可能引起继电保护误动作时,用以闭锁继电器。 2 结构和工作原理 DB-1型断相闭锁继电器的原理线路图见图1。 图1 DB-1原理接线图 断相闭锁继电器线路由零序电压过滤器(三个容量…

ubuntu20.04下安装pcl_ubuntu安装pcl

pcl点云数据库,用来进行3D信息的获取与处理,和opencv相比较,opencv是用来处理二维信息,他是学术界与工业界针对点云最全的库,且网络上相关的资料很多。以下是pcl的安装步骤以及遇到的问题。 提前说明,本人…

Shell三剑客:awk(格式化输出)

一、格式符 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x %X 无符号以十六进制表示的整数 %o 无符号以八进制表示的整数 %g 自动选择合适的表示法 % % 显示%自身 # [.#] 第一个数…

10分钟创建AIGC应用,腾讯云推出高性能应用服务HAI

降低AIGC应用开发门槛,才能更快发现下一个AIGC现象级应用。 12月18日,腾讯云宣布推出高性能应用服务(Hyper Application Inventor,HAI),用户无需复杂配置,最快10分钟即可创建自己的AI应用。 HAI能够提供即插即用的算…

Vue 的两种实现:VSCode 中配置 vue 模板快捷方式的过程

1、创建配置文件: 其一、打开 VSCode ,CtrlShiftP, 打开搜索框: 其二、输入:user, 并点击进去 Snippets:Configure User Snippets 其三、输入 vue3js 并回车: 其四、打开项目,发现配置文件 vue3js.code-sn…

Layui 下拉select多选实现

1. html <div id"mo_deptment"></div> 2.引用 <script src"~/layuiadmin/layui/xm-select.js"></script>3.设置全局变量存储控件 var mo_deptmentSelect; 4.layui.use 中初始化 4.1 列表数据 var mo_deptmentdata [ …

红队打靶练习:DIGITALWORLD.LOCAL: DEVELOPMENT

信息收集 1、arp ┌──(root㉿ru)-[~/kali] └─# arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:69:c7:bf, IPv4: 192.168.12.128 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.12.1 00:50:56:c0:00:08 …

数字图像处理-空间域图像增强-爆肝18小时用通俗语言进行超详细的总结

目录 灰度变换 直方图&#xff08;Histogram&#xff09; 直方图均衡 直方图匹配&#xff08;规定化&#xff09; 空间滤波 低通滤波器 高通滤波器 ​​​​​​​ 本文章讲解数字图像处理空间域图像增强&#xff0c;大部分内容来源于课堂笔记中 灰度变换 图像增强&…

使用Python将OSS文件免费下载到本地:第一步 列举OSS文件

大家好,我是水滴~~ 本文将介绍了使用的知识点、以及列举OSS文件的代码、并对该代码进行详细解析、最后给出部署方案,希望能对你有所帮助! 《Python入门核心技术》专栏总目录・点这里 系列文章 使用Python将OSS文件免费下载到本地:项目分析和准备工作使用Python将OSS文件免…

【网络安全】学习Web安全必须知道的一本书

【文末送书】今天推荐一本网络安全领域优质书籍。 目录 正文实战案例1&#xff1a;使用Docker搭建LAMP环境实战案例2&#xff1a;使用Docker搭建LAMP环境文末送书 正文 学习Web安全离不开Web&#xff0c;那么&#xff0c;需要先来学习网站的搭建。搭建网站是每一个Web安全学习…

为什么SSL证书是必备之物?

SSL证书的首要任务是保障用户和网站之间的数据传输安全。未加密的数据传输容易受到中间人攻击&#xff0c;使敏感信息暴露于风险之中。SSL通过加密数据&#xff0c;有效地抵御了这些潜在的威胁&#xff0c;确保用户的隐私得到充分保护。 采用SSL证书的网站在浏览器地址栏中通常…

如何进行USB丢弃攻击?

USB丢弃攻击&#xff0c;类似于一场表演艺术&#xff0c;您需要构建一个引人入胜的故事&#xff0c;激发目标的好奇心&#xff0c;让他们忽略基本的安全意识&#xff0c;插入您精心准备的USB设备! 本文章仅限娱乐&#xff0c;请勿模仿或进行违法活动&#xff01; 一、选择放置…

Java版企业电子招投标系统源代码,支持二次开发,采用Spring cloud微服务架构

招投标管理系统是一个集门户管理、立项管理、采购项目管理、采购公告管理、考核管理、报表管理、评审管理、企业管理、采购管理和系统管理于一体的综合性应用平台。它适用于招标代理、政府采购、企业采购和工程交易等业务的企业&#xff0c;旨在提高项目管理的效率和质量。该系…

Http---HTTP响应报文

1. HTTP响应报文分析 HTTP 响应报文效果图: 响应报文说明: --- 响应行/状态行 --- HTTP/1.1 200 OK # HTTP协议版本 状态码 状态描述 --- 响应头 --- Server: Tengine # 服务器名称 Content-Type: text/html; charsetUTF-8 # 内容类型 Transfer-Encoding: chunked # 发送给客…

【Qt之Quick模块】5. QML基本类型及示例用法

QML格式 QML基本类型 在 QML 中&#xff0c;有以下基本类型&#xff1a; int&#xff1a;整数类型。 Rectangle {function myFunction() {// 输出 debug 信息console.log("11 " (11));}Component.onCompleted: {myFunction();} }结果&#xff1a; 2. real&…

FreeRTOS之队列集操作(实践)

多个任务在在同一队列中传递的同一种数据类型&#xff0c;而队列集能够在任务之间传递不同的数据类型。 配置流程&#xff1a;&#xff08;更详细流程参考正点原子的教程&#xff09; 1、启用队列集将configUSE_QUEUE_SETA置1&#xff09; 2、创建队列集 3、创建队列或信号…

SpringBoot对接支付宝完成扫码支付

文章目录 1、支付方式选择2、交互流程3、对接准备1&#xff09;加密解密 签名验签2&#xff09;沙箱环境3&#xff09;内网穿透 4、二维码5、下单6、异步通知回调7、查询支付结果8、退款9、通用版SDK 需求&#xff1a;系统A对接支付宝&#xff0c;实现支持用户扫码支付 1、支…

成为一名FPGA工程师:面试题与经验分享

在现代科技领域&#xff0c;随着数字电子技术的迅猛发展&#xff0c;FPGA&#xff08;可编程逻辑器件&#xff09;工程师成为了备受瞩目的职业之一。FPGA工程师不仅需要掌握硬件设计的基本原理&#xff0c;还需要具备良好的编程能力和解决问题的实践经验。面对如此竞争激烈的行…

语音识别之百度语音试用和OpenAiGPT开源Whisper使用

0.前言: 本文作者亲自使用了百度云语音识别,腾讯云,java的SpeechRecognition语言识别包 和OpenAI近期免费开源的语言识别Whisper(真香警告)介绍了常见的语言识别实现原理 1.NLP 自然语言处理(人类语言处理) 你好不同人说出来是不同的信号表示 单位k 16k16000个数字表示 1秒160…

C语言中关于操作符的理解

本篇文章只会列出大家在生活中经常使用的操作符 算术操作符 在算数操作符中常用的有&#xff0c;&#xff0c;-&#xff0c;*&#xff0c;/&#xff0c;% &#xff0c;我们重点讲一讲 / (除) 和 % (模) " / "运算 #include <stdio.h>int main() {int a5/2;fl…