1:网络编程(理解)
(1)网络编程:用Java语言实现计算机间数据的信息传递和资源共享
(2)网络编程模型
(3)网络编程的三要素
A:IP地址
a:点分十进制
b:IP地址的组成
c:IP地址的分类
d:dos命令
e:InetAddress
B:端口
是应用程序的标识。范围:0-65535。其中0-1024不建议使用。
C:协议
UDP:数据打包,有限制,不连接,效率高,不可靠
TCP:建立数据通道,无限制,效率低,可靠
(4)Socket机制
A:通信两端都应该有Socket对象
B:所有的通信都是通过Socket间的IO进行操作的
(5)UDP协议发送和接收数据(掌握 自己补齐代码)
发送:
创建UDP发送端的Socket对象
创建数据并把数据打包
发送数据
释放资源
接收:
创建UDP接收端的Socket对象
创建数据包用于接收数据
接收数据
解析数据包
释放资源
(6)TCP协议发送和接收数据(掌握 自己补齐代码)
发送:
创建TCP客户端的Socket对象
获取输出流,写数据
释放资源
接收:
创建TCP服务器端的Socket对象
监听客户端连接
获取输入流,读取数据
释放资源
(7)案例:
A:UDP
a:最基本的UDP协议发送和接收数据
b:把发送数据改进为键盘录入
c:一个简易聊天小程序并用多线程改进
B:TCP
a:最基本的TCP协议发送和接收数据
b:服务器给出反馈
c:客户端键盘录入服务器控制台输出
d:客户端键盘录入服务器写到文本文件
e:客户端读取文本文件服务器控制台输出
f:客户端读取文本文件服务器写到文本文件
g:上传图片
h:多线程改进上传文件
学生练习
*Socket考题
1、Java语言API中使用哪两个类实现TCP协议通讯编程?(A)
A、Socket和ServerSocket
B、Reader和Writer
C、URL和Connection
D、Client和Server
2、ServerSocket类中哪个方法可以接收客户端的请求?(B)
A、receive
B、accept
C、connect
D、get
* UDP考题?
1、Java语言的API中,哪个类可以用来发送和接收UDP数据报(B)?
A、UDP
B、DatagramSocket
C、Socket
D、ServerSocket
2、Java语言的API中,哪个类表示UDP协议中的数据报?(A)
A、DatagramPacket
B、Datagram
C、DatagramPackage
D、DataPacket
* HTTP通讯考题?
1、请问GET和POST请求方式有什么不同?
GET:最常见的一种请求方式,当客户端要从服务器中读取文档时,当点击网页上的链接或者通过在浏览器的地址栏输入网址来浏览网页的,使用的都是GET方式。
POST:POST方法可以允许客户端给服务器提供信息较多。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据。使用表达提交基本都用POST方式。
2、HTTP请求信息由哪几部分组成?
HTTP请求信息由请求行、请求头部、空行和请求数据四个部分组成;
3、HTTP响应由哪几部分组成?
HTTP响应由四个部分组成,分别是:状态行、响应头部、空行、响应正文。
*TCP和UDP
请问TCP和UDP协议有什么差别?
TCP是面向连接的协议,在正式收发数据前,必须和对方建立可靠的连接,所以速度会慢;UDP是面向无连接的协议,不与对方建立连接,而是直接就发送数据包,相对速度快;
TCP提供IP环境下的数据可靠传输,保证数据无差错的、按照顺序的进行传输;UDP的传输是不可靠的,不保证数据正确,不保证顺序等,也可能丢包;
TCP使用字节流模式发送数据,UDP使用数据报模式;
TCP适用对可靠性要求高的应用环境;UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境;
领取专属 10元无门槛券
私享最新 技术干货