服务器端与客户端的简单搭建与数据传输

知识简结:

  1. 网络编程:在两台不同的计算机间传递数据

  2. 服务器端:存储/处理数据

  3. URL:统一的资源定位

  4. ip地址:唯一标识某一台电脑

  5. DNS服务器:域名解析 将www.baidu.com类型的域名解析为对应的ip地址

  6. search 对应的后台程序文件

  7. ' ? '表示运行这个程序需要传递的参数

  8. 如果有多个参数,使用&符号链接

  9. 端口号:唯一标识这台电脑上的一个程序

  10. 数据传输:TCP/IP协议
    TCP:面向链接,安全的
    UDP:面向无链接的,不安全,但快

  11. 网络中的数据传输:socket 实现->套接字
    Socket:客户端
    ServerSocket:服务器端

搭建一个简单的客户端-服务器端模拟交互程序
Test 1:
模拟客户端:只接收服务器端传输的数据

Jietu20190821-100309.jpg

模拟服务器端 :只向客户端发送数据
Jietu20190821-100332.jpg

交互结果:
Jietu20190821-100227.jpg

Test 2:
模拟客户端:既能接受服务器端发出的数据也能向服务器端发送数据


Jietu20190821-142506.jpg

模拟服务器端:既能向客户端发送数据也能接受客户端传输的数据


Jietu20190821-142529.jpg

交互结果服务器端:
Jietu20190821-143150.jpg

交互结果客户端;
Jietu20190821-143159.jpg

搭建使用手动输入数据进行传输的简单交互程序
模拟客户端:只接收服务器端发送的数据:

Jietu20190821-144001.jpg

模拟服务器端:只从终端接收数据并发送给客户:
Jietu20190821-144021.jpg

传输结果显示:
服务器端输入:
Jietu20190821-144144.jpg

客户端输出:
Jietu20190821-144152.jpg

从客户端向服务端发送图片
客户端操作:

Jietu20190821-155157.jpg

服务器端操作:
Jietu20190821-155211.jpg

传输结果显示:
Jietu20190821-152301.jpg

Jietu20190821-152242.jpg

Jietu20190821-155029.jpg

实现客户端和服务器端的对聊
//客户端和服务器端都可以随意发送内容,实现对聊 -> 从终端输入
客户端:
主线程:接收终端输入;

Jietu20190821-215619.jpg

子线程:将终端的输入发送到服务器;接收服务器端发送的数据
Jietu20190821-215645.jpg

服务器端:
主线程:接收终端输入


Jietu20190821-215658.jpg

子线程:将终端输入发送给客户端;接收客户端发送的数据


Jietu20190821-215712.jpg

对聊结果显示如下:


Jietu20190821-220453.jpg

利用客户端与服务器端简单实现群聊
客户端实现:

Jietu20190821-215738.jpg

Jietu20190821-215753.jpg

服务器端实现:


Jietu20190821-215809.jpg

Jietu20190821-215936.jpg

今日总结:为什么感觉今天的学习内容相比之前要有趣的多,虽然只是跟着敲了几遍代码,虽然还是有很多知识点不能消化理解,不知道是我的英语变差了,还是逻辑能力不够。随随便便已经过去了半个多月了,感觉自己学习劲头还不足够,好像每天过下来,即没有努力认真的踏实感,也没有水平高出以前的收获感,好像唯一进步的是自己的打字水平。。。有时候感觉每天都是艰难期,学什么都觉着没有准备好似的。时日还勉强足够,希望自己勉强也要继续认真下去。

你可能感兴趣的:(服务器端与客户端的简单搭建与数据传输)