java——网络编程,java高级面试宝典下载

②常见的端口:

80 : http

8080 : tomcat

1521 : Oracle

3306 : Mysql

③InetSocketAddress 此类实现IP套接字地址(IP地址+端口号)它也可以是一对(主机名+端口)

(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.用户名与密码

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

④刷出

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值