Socket和ServerSocket(建立客户端和服务器端)
网络编程(c/s)与网站编程(b/s)的区别?
网站编程是编写网页html,jsp,servelet等,只需要编写一端(server端),不需要编写client端,已经编写好了
网络编程相对底层一些,服务端和客户端都需要编写,比如说QQ,msn,飞秋。网络编程又叫Tcp/ip编程
TCP/IP协议是一种可靠的网络协议
UDP协议是一种不可靠的网络协议
TCP协议作用:在计算机之间建立起发送数据和接收数据的虚拟链路,确保数据在传输过程中准确无误
IP协议作用:使用internet成为一个允许连接不同类型的计算机和不同操作系统的网络(所有的计算机都得使用同一种语言,发送消息、接收消息)
TCP和IP协议在功能上是互补的,只有两者结合,才能保证internet在复杂的环境下正常运行
Socket和ServerSocket
建立客户端和服务器端
建立连接后,通过Socket中的IO流进行数据的传输
关闭socket
同样,客户端与服务器端是两个独立的应用程序。
1:建立服务器端的socket服务,需要一个端口
2:服务端没有直接的操作,而是通过accept方法获取客户端对象,在通过获取到的客户端对象的流和客户端进行通信
3:通过客户端获取流对象的方法,读取数据或者写入数据
4:如果服务完成,需要关闭客户端,然后关闭服务器,但是,一般会关闭客户端,不会关闭服务器,因为服务端是一直提供服务的
建立客户端的Socket服务,并明确要连接的服务器。
2:如果连接建立成功,就表明,已经建立了数据传输的通道.就可以在该通道通过IO进行数据的读取和写入.该通道称为Socket流,Socket流中既有读取流,也有写入流.
3:通过Socket对象的方法,可以获取这两个流
4:通过流的对象可以对数据进行传输
5:如果传输数据完毕,关闭资源
Socket和ServerSocket(建立客户端和服务器端)相关推荐
- java socket通信 客户端_JavaのSocket编程之简单客户端与服务器端通信
Socket编程之简单客户端与服务器端通信 socket 通常用来实现客户端和服务端的连接,socket 是Tcp/Ip协议的一个十分流行的编程界面,一个socket 由一个Ip地址和一个端口号唯一确 ...
- 服务器客户端通信原理,客户端到服务器端通信原理
我们首先要了解一个概念性的词汇:Socket socket的英文原义是"孔"或"插座".作为进程通信机制,取后一种意思.通常也称作"套接字" ...
- Socket 基础解析使用ServerSocket建立聊天服务器
1.socket 简介 Socket 又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求.ServerSocket 用于服务器端,S ...
- Socket编程(Android客户端+PC服务器端)
一个多月没有写东西了,感觉像过了一个暑假...废话不多说了,今天来记录一下这两天学习Socket的内容.按照我研究思路来进行一步步的深入Socket. 一.什么是Socket 网络上的两个程序通过一个 ...
- Android客户端与服务器端socket通讯
Android客户端与服务器端的Socket通讯: socket通讯依赖IP地址和端口号,每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务. 服务器端代码: 实例化主类, ...
- Java通过socket实现客户端和服务器端的通信
在学习Java的socket通信时,老师布置的一道作业题,借此机会也对相关的知识进行梳理,题目如下: 编写客户服务器端程序,使用Socket技术实现通信,双方约定通信端口为6789.服务器端功能:当收 ...
- 利用原始socket简单实现FTP的客户端和服务器端程序
1.设计目的 本设计旨在利用原始socket简单实现FTP(File Transfer Protocol,文件传输协议)的客户端和服务器端程序,能够实现get.put.pwd.dir.cd等基本交互命 ...
- 客户端服务器信息交互,select实现客户端和服务器端的信息交互(TCP socket)
实现功能: 客户端:<1>从标准输入(键盘)读入信息,然后通过socket发送到服务器端; <2>接收来自服务器端的信息,并显示到终端里. 服务器端:<1>从标准输 ...
- python--DenyHttp项目(1)--socket编程:客户端与服务器端
查找了许多资料,实现了客户端与服务器端的连接,通过虚拟机进行测试 服务器端IP:192.168.37.129 端口1122 客户端IP: 192.168.37.1 端口1122 Server: #co ...
最新文章
- LotusScript类的继承
- 刷题总结——魔法森林(bzoj3669)
- 显示不出中文_优惠拿不出手,销量却吊打对手,宝马3系到底强在哪?
- Django框架之DRF get post put delete 使用简单示例 (利用序列化反序列化)
- 【Qt】QModbusDataUnit类
- 主板和机箱的螺丝_铝镁合金外壳,双侧透设计,乔思伯TR03-A机箱 装机体验
- Xamarin中国峰会2019
- linux 进程的vss rss uss,内核/内存管理中的VSS/RSS/PSS/USS
- Puppet 之 模板和模块
- python自动调整格式_pycharm使用技巧之自动调整代码格式总结
- SLAM——绘制高精度地图的研究笔记
- 室内设计师招募中...
- 快速向表中插入大量数据Oracle中append与Nologgin的作用
- PC 平台上的一种快速 Red Hat Linux 安装方法
- Python socket.send()与socket.sendall()的区别
- python毕业论文开题报告范文_毕业论文的开题报告怎么写?
- java十进制_JAVA 十进制 转换成 三进制
- Server2012 下 部署ADFS IFD
- 用Python数据分析选购手机,双十一刚过你选对了嘛
- JavaSE基础知识(十八)--Java多态之向上转型(多态初步)
热门文章
- EC200 EC600 EC20接入工业互联网云平台
- php 实现二叉树的最大深度_PHP实现二叉树的深度优先遍历(前序、中序、后序)和广度优先遍历(层次)...
- 汉画轩—让国学与区块链技术碰撞出更璀璨的火花
- 2011计算机考研大,2011计算机考研399分,从通大到南大
- 工业机器人编程调试怎么学
- 浅谈AI模型的可解释性、安全性与正义性(中)
- 基于element-ui 搭建管理后台
- 如何禁止百度自动转码?
- 网络分析仪测试线损_手把手教你用2端口网络分析仪进行阻抗调试分析--网络分析仪维修...
- vim配置及常用插件安装