Java URL类的中的TCP

树莓派部署Home Assistant:打造本地化智能家居大脑 家庭自动化旨在通过技术提升居住便利性与舒适度,其核心在于中枢控制系统对各类设备的统一调度。传统云端方案虽部署简便,但存在隐私泄露、网络依赖与生态壁垒等固有缺陷。本地化部署通过将控制逻辑与数据存储于家庭内部网络,从根本上解决了这些问题,实现了数据自主、离线可用与跨品牌联动。Home Assistant作为领先的开源家庭自动化平台,结合树莓派这一低功耗、高性价比的硬件载体,为构建私有、可靠的智能家居中枢提供了成熟方案。本文以树莓派4B为例,详细阐述了从系统安装、设备集成到自动化场景创建的完整实践流程,并深入探讨 阅读详情

需要服务器端和客户端

这里是服务器端

package cn.sdut.net;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
//相当于打电话
//端口[0,65535]
//80\443\21\3306等端口号不能随便用
public class TCPServer {//服务器端

    public static void main(String[] args) {
        try {//抛异常
            ServerSocket ss = new ServerSocket(9998);//套接字,绑定服务器的端口,便于客户端的连接。
            while(true) {//while循环用于客户端输入的时候,所有的服务器都可以接收。
                Socket socket = ss.accept();//这句话的作用是,一旦建立连接就可以执行下面的语句。
                System.out.println("连接完成!");
                //客户端是用来接收(读取)数据的。
                //所以要建立输入流。
                InputStream is = socket.getInputStream();//获取输入流。用于读取数据。
                //剩余的和输入输出流是一样的。
                byte[] bytes = new byte[10];
                int len = 0;
                String str = null;
                while((len = is.read(bytes))!=-1) {
                    str = new String(bytes,0,len);
                    System.out.println(str);
                }
                System.out.println("服务器读取数据结束。。");
                //读取完之后回话。
                OutputStream os = socket.getOutputStream();//回话的话,需要的是输出流。
                os.write("Yes,thank you!".getBytes());//以字节数组的形式输出。
                socket.shutdownOutput();//输出结束的标志。
                //★注意不是这个socket.shutdownInput();
                System.out.println("服务器发送数据结束。。");
                //关闭,好的习惯。后开启是先关闭。
                is.close();
                os.close();
                socket.close();
                if(str.equals("end")) {
                    break;//结束的标志,表示客户端不再发送数据。
                }
                ss.close();
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
}

这里是客户端

package cn.sdut.net;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

public class TCPClient {//客户端

    public static void main(String[] args) {
        try {
            Socket socket = new Socket(InetAddress.getLocalHost(), 9998);//获取的是服务器端的ip地址和端口号。
            //用于建立连接。服务器端有设置的固定端口。ServerSocket(9998);然后用客户端建立连接,接着用accept方法接受连接。
            System.out.println("建立连接");
            //建立连接之后就可以发送信息了。
            //用到输出流。
            OutputStream os = socket.getOutputStream();
            os.write("Hello!Server".getBytes());
            socket.shutdownOutput();//回话结束的标志。
            System.out.println("客户端发送数据结束");
            //然后是读取服务器端发送来的数据。
            InputStream is = socket.getInputStream();
            byte[] bytes = new byte[10];
            int len = 0;
            while((len = is.read(bytes))!=-1) {
                String str = new String(bytes,0,len);
                System.out.println(str);
            }
            System.out.println("客户端读取数据完毕");
            //好的习惯。
            os.close();
            is.close();
            socket.close();
        } catch (UnknownHostException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
 

串口、COM、UART、TTL、USB、RS-232、RS-485、I2C、SPI、CAN、1-WIRE 一文搞定,赶紧收藏吧 阅读详情

相关推荐

表格数据学习的图神经网络综述

今天学习一篇发表在中科院一区期刊《ACM Computing Surveys》的综述文章《Graph Neural Networks for Tabular Data Learning: A Survey with Taxonomy & Directions》,该刊主要刊载计算机理论方法领域的系统性综述与教程论文,注重跨学科技术融合研究,最新的影响因子为28.0。本文的目的在于通过学习这篇文章,了解关于表格数据学习点图神经网络一些基础知识。

qq_41009600的博客 799

Java URL,TCP,UDP

URL package com.intenet.ljb; import java.io.*; import java.net.URL; /** * URL 编程 * 1.URL 的基本结构由 4 部分组成:<传输协议>://<主机名>:<端口号>/<文件名> * 例如: http://www.baidu.com:8080/helloworld/index.jsp * 2.一个 URL 对象生成后,其属性是不能被改变的: *

jin_xinyu的博客 739

ADRV9026初始化避坑指南:手把手调试PostMcsInit常见故障

本文详细解析了ADRV9026多片同步初始化过程中的PostMcsInit常见故障,包括时钟校准失败、JESD链路建立问题和ARM核通信异常等。通过实际项目经验,提供了硬件检查清单、软件配置要点和分层诊断方法,帮助工程师快速定位和解决问题,提升系统稳定性。

hadoop5ranger的博客 620

java TCP/UDP、Socket、URL网络编程详解

网络通信协议 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合 如何实现网络中的主机互相通信,有一定的规则(即:网络通信协议。有两套参考模型) OSI七层参考模型:开放式系统互联参考模型,模型过于理想化,未能在因特网上进行广泛推广 应用层、表示层、会话层;传输层、网络层、数据链路层、物理层。 TCP/IP五层参考模型(或TCP/IP协议簇):事实上的国际标准。有人将其分为四层,有人分为五层。 4层:应用层、传输层、网络层、网络接口层 5层:应用层、传输层、网络层、数据链路层、物理层

荷逸的博客 1343

保姆级教程:用VESTA软件5分钟搞定纳米颗粒Wulff Construction建模(以Au金为例)

本文提供了一份详细的VESTA软件教程,指导用户如何在5分钟内完成纳米颗粒Wulff Construction建模,特别以金(Au)为例。从环境搭建、基础晶体结构创建到Wulff Construction设置和可视化优化,涵盖了全流程操作步骤和常见问题解决方案,适合科研新手快速上手。

weixin_29311017的博客 436

别再用默认参数了!手把手教你用2P2Z补偿网络优化Buck电源的动态性能

本文详细介绍了如何通过2P2Z补偿网络优化Buck电源的动态性能,解决默认参数下的负载阶跃响应问题。从频域分析到元件选型,再到实测验证,手把手教你提升相位裕度,显著降低超调量和稳定时间,适用于DCDC和开关电源设计。

weixin_33657398的博客 257

java的URL类

URL

qq_43456605的博客 6012

Spring AI 项目实战(十):Spring Boot + AI + DeepSeek 构建智能合同分析技术实践(附完整源码)

摘要:基于Spring AI的智能合同审核系统开发 本文介绍了基于Spring Boot 3.2.0和Spring AI 1.0.0-M4构建的智能合同审核系统。系统采用分层架构设计,整合DeepSeek API实现文档解析、条款提取和风险分析功能。核心技术栈包括Spring AI、H2数据库、Apache POI/PDFBox等文档处理工具,实现了合同条款语义分析、异常识别和审核报告自动生成。项目解决了传统人工审核效率低、主观性强等问题,为合同管理提供了智能化解决方案。文章详细阐述了系统架构设计、技术选型

博客 654

Java中的URL类

URL(统一资源定位符)是一种地址系统,用于在互联网上定位资源。一个完整的URL通常包括协议、主机名、端口号、路径、查询字符串和片段标识符。URL类是Java网络编程中一个非常重要的类,提供了创建和操作URL的强大功能。通过本文的介绍,您应该对URL类的构造方法、常用方法以及如何使用它们来解析和读取URL资源有了更深入的理解。在实际应用中,URL类常用于网络通信、数据抓取等场景,是Java开发者必须掌握的基础技能之一。

yimeixiaolangzai的博客 2359

课设:FPGA音频均衡器 verilog设计及仿真 加报告

未来,随着FPGA技术的进一步发展和应用场景的扩大,FPGA音频均衡器将发挥出更大的作用,并为音频领域带来更多创新和突破。(a)音乐制作:均衡器可以调整音频信号中不同频段的能量分布,使得乐器声音更加明亮、动感,从而提升音乐制作的质量和创作的灵活性。以上步骤提供了设计一个音频均衡器的大致过程,但值得注意的是,具体实现的细节和复杂度可能因设计要求和所使用的平台而有所不同。确保设计满足预期的性能和要求。确定均衡器的功能和要求:定义你的音频均衡器需要实现的功能,包括频率范围、增益范围以及可调参数数量等。

QQ_778132974的博客 1588

Android 15.0 app进程保活白名单功能实现

在15.0的系统rom产品开发中,在某些重要的app即使进入后台,产品需求要求也不想被系统杀掉进程,需要app长时间保活,就是app进程保活白名单功能的实现, 所以需要在系统杀进程的时候不杀掉白名单的进程,接下来就看怎么样来实现这些功能

安卓兼职framework和app工程师的博客 638

Java网络编程之Socket---TCP(一)

Java网络编程之Socket---TCP(一)

weixin_48568302的博客 4310

FPGA原型验证(七):如何选择、搭建原型验证平台?

本篇概要::讨论了在项目初期选择目标FPGA平台的重要性,包括自制板卡与购买现成板卡之间的决策。主要是为那些希望建立基于FPGA的原型平台的工程师和设计师提供了深入的技术细节和决策指导,无论是选择自制还是购买现成的解决方案。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 943

【java编程】TCP_Socket网络编程之用URL类创建浏览器

import java.io.*; import java.net.*; import java.awt.*; import java.awt.event.*; class URLDemo { public static void main(String[] args) { new URLDemo(); } private Frame f; private TextField t

小聪的博客 647

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Java中网络相关的InetAddress类、Socket类和URL类

InetAddress类的一个实例就代表一个具体的IP地址。

wytccc的博客 1034

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

学习Java第十九天(二):1、Java中的网络编程

第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入established状态,完成三次握手,随后Client与Server之间可以开始传输数据了。URI是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。URL是URI的一个子集。

Java的第一人称视角 440

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Java——网络编程

【代码】Java——网络编程。

weixin_44212870的博客 1060

Java——网络编程(中)—TCP通讯(上)

网络编程常用类,InetAddress类,InetSocketAddress类和URL类的使用。TCP通讯介绍,创建服务端和客户端,以及如何单项通讯

2301_80867182的博客 1486

Java socket的介绍

第一节 网络基础简介 这里我们首先先简单介绍一下socket编程的基础知识,Java对网络提供了高速的支持,使得客户端和服务器的沟通变成了现实,而在网络编程中使用最多的就是socket,大家所熟悉的网络程序,像QQ,MSN等等,这些网络应用都使用了socket相关的技术,JAVA平台为我们提供了一组功能强大的类,为我们使用socket进行网络程序的开发,本专题就为大家一起揭开socket的神秘面

yuqnfendetiankong的博客 1万+

Java网络编程(二)(URL与UDP)

1、Java URL处理 URL(Uniform Resource Locator)中文名为统一资源定位符,有时也被俗称为网页地址。表示为互联网上的资源,如网页或者FTP地址。 HTTP 协议的 URL 实例如下: URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。 https://www.jianshu.com/u/ddd4e8122669(简书个人主页) 2、URL 类 2.1、URL类概述及常用方法 在java.net包中定义了URL类,该类用来处理有关URL的内容。对于URL类

hw159357_的博客 356

Java 网络编程

Java 网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net包中J2SE的API包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。 java.net包中提供了两种常见的网络协议的支持...

chenziyin9959的博客 98

Java中Socket编程1 TCP|UDP通信

通信数据源文件:数据源:文件、byteArrayOutputStream、管道、控制台 1. 基础概念: 1. 地址:Ip地址 2. 端口: 计算机中区分不同进程 同一个协议下,端口不能重复使用,不同协议可以 1024以下端口预留给系统的 比如http 80 ftp 21 URL: 统一资源定位符 组成: 协议+主机域名+端口+资源文件名 3. 数据...

dreams_deng的博客 407

java计算机网络(一)-- url,tcp,udp,socket

若希望输出数据,例如向服务器端的CGI (公共网关接口-Common Gateway Interface-的简称,是用户浏览器和服务器端的应用程序进行连接的接口)程序发送一些数据,则必须先与URL建立连接,然后才能对其进行读写,此时需要使用URLConnection。在Java的URI中,一个URI实例可以代表绝对的,也可以是相对的,只要它符合URI的语法规则。需要创建新的套接字对象。1,创建udp的socket服务,必须要明确一个端口,作用在于,只有发送到这个端口的数据才是这个接收端可以处理的数据。

牛大圣 1077

第十三讲 网络编程

创建Socket对象时,会根据参数去连接在指定地址和端口上运行的服务器程序,参数address用于接收一个InetAddress类型的对象,该对象用于封装一个IP地址。如果该对象是由服务器端的Socket返回,就用于读取客户端发送的数据;URL类的openConnection()方法的返回结果是一个URLConnection类对象,主要用于程序和URL之间的通信连接,其主要方法如表3所示。该方法用于等待客户端的连接,在客户端连接之前一直处于阻塞状态,如果有客户端连接就会返回一个与之对应的Socket对象。

2301_76272808的博客 1088

网络编程(JAVA基础)

一.网络通讯协议 二.URL类 三.Socket编程 四.TCP双向通讯 五.UDP通讯实现

ZangLing的博客 1007

Java网络编程

java自学记录

hfut天天的博客 1040
上一篇: 折线分割平面
下一篇: javax.servlet.ServletException: Error instantiating servlet class
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值