java——网络编程

(3)URL

同一资源定位符,指向万维网上的“资源”的指针。

①组成:

a.协议: http,b.域名: www.baidu.com,c.端口号: 80,d.资源: index.html,e.提交数据: name=zhangsan&pwd=123 f.锚点: #a

互联网 的三大基石:

a.html,b.http,c.url

URL 类

(4)网络爬虫

2**、udp**

(1)套接字:传输层为应用层开辟的小口子,不同协议下Socket实现不同,UDP与TCP协议对Socket实现

①UDP : 相当于写信|有包裹|发短信  非面向连接   协议简单,开销小,效率高   不安全    大小由限制(一般不超过60k)

②TCP : 相当于打电话       面向连接    效率低  安全      大小没有限制

③基于三次握手,UDP协议下发送端与接收端两端平等DatagramSocket  此类表示用于发送和接收数据报包的套接字。

④DatagramSocket(int port) 构造一个数据报套接字并将其绑定到本地主机上的指定端口。A.void receive(DatagramPacket p) 从此套接字接收数据报包。B.void send(DatagramPacket p) 从此套接字发送数据报包。

⑤DatagramPacket 该类表示数据报包。byte[] getData() 返回数据缓冲区。int getLength() 返回要发送的数据的长度或接收的数据的长度。数据的传输基于字节数组

⑥UDP实现发送端: 基本流程

 a.定义我是发送端

b.准备数据

c.打包

d.发送

e.关闭

(2)①UDP实现接收端: 基本流程

a.定义我是接收端

b.准备字节数组,打包

c.接收数据

d.处理数据

e.关闭

②注意;  统一协议下端口号不能冲突

3**、tcp**

(1)客户端  Socket

①Socket(String host, int port) 创建流套接字并将其连接到指定主机上的指定端口号。

a.InputStream getInputStream()

b.OutputStream getOutputStream()

②服务器  ServerSocket 该类实现服务器套接字。

a.ServerSocket(int port) 创建绑定到指定端口的服务器套接字。

b.Socket accept() 侦听对此套接字的连接并接受它。

③tcp协议下传输数据基于IO流,tcp协议实现基本流程 : 客户端

a.定义我是客户端–>指定要请求的服务器的IP+端口

b.准备数据,c.获取输出流,d.输出–>IO操作,e.刷出,f.关闭

(2)tcp协议实现基本流程 : 服务端

①定义我是服务端

②阻塞式监听

③获取输入流–>接收客户端的请求数据

④处理数据

⑤关闭

(3)tcp 单向登录: 客户端

①定义客户端

②准备数据(用户输入)

a.输入流

b.用户名与密码

③获取输出流向服务器端发送数据(用户名与密码)

④刷出

⑤关闭

(4)tcp 单向登录: 服务端

①定义我是服务器

②阻塞式监听

③获取输入流接收客户端发动的数据

④处理数据

⑤关闭

要求: 服务器端接收到用户输入的用户名与密码,与指定的laopei,1234比较是否相等,相等本地输出登录成功,不相等输出用户名或密码错误!!!

(5)tcp 双向登录: 客户端

①定义客户端

②准备数据(用户输入)

a.输入流

b.用户名与密码

③获取输出流向服务器端发送数据(用户名与密码)

④刷出

⑤获取输入流 从服务器端读取响应

⑥关闭

(6)tcp双向登录: 服务端

①定义我是服务器

②阻塞式监听

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
avMZ-1715717203333)]

[外链图片转存中…(img-y9nm06OC-1715717203333)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 18
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值