java基础----网络协议及网络通讯
来源:互联网 发布:优化再造办税服务 编辑:程序博客网 时间:2024/06/09 08:03
网络协议:
- TCP:传输控制协议(传输层),三次握手建立连接,保证连接准确性;四次挥手断开连接,报头最小长度20字节
- 客户端:同步信号SYN=1,随机序列号SEQ=X
- 服务端:同步信号SYN=1,报文ACK=X+1,随机序列号Y
- 客户端:同步信号SYN=0,报文ACK=Y+1
- UDP:用户数据包协议(传输层),面向无连接的协议,报头8字节
- HTTP:超文本传输协议(应用层),基于请求和响应模式、无状态的协议,特点有:
- 支持C(客户端)/S(服务器)模式
- 灵活:允许传输任意类型的数据对象
- 无连接:每次响应一个请求后就断开连接
- 无状态:对事务处理没有记忆能力
java网络请求:
Socket:tcp/ip协议的封装和应用
- TCP编程:对网络通讯质量有要求时,例如传输文件,浏览网页,简单使用过程:
- 服务器端:定义ServerSocket对象ss,传进端口号参数(例如6666),调用ss.accept()方法,等待客户端连接,注意这方法会线程阻塞,连接成功(accept()执行完)会返回一个Socket对象,通过这个对象获取输入输出流就可以和客户端进行通信了
- 客户端:定义Socket对象s,传进参数(目标主机IP地址,目标端口号),因为是测试,所以IP填自己IP地址(localhost),端口号填上面的6666,在上面实例化s后就已经连接上服务器端ss了,通过s获取输入输出流就可以和服务器端进行通信了
- UDP编程:对网络通讯质量要求不高时,例如,实时语音,视频聊天,发生掉包也影响不大
HttpURLConnection:对Http协议的封装和应用,简单使用过程:
- 实例化URL对象,传入网络地址
- 通过url.openConnection获得HttpURLConnection对象connection
- 对connection设置GET或者POST方式决定是请求数据,还是想服务器发送数据
- 设置连接时间和读取时间
- 获取输入输出流,对流进行转换为容易进行操作的其他流,例如BufferedRead,DataOutPutStream等等
- 最后一定要记得对流进行关闭,调用close()方法
0 0
- java基础----网络协议及网络通讯
- 网络通讯协议简介(网络基础)
- 网络通讯和网络协议
- 网络编程(8)自定义网络通讯协议
- 网络通讯协议
- 网络通讯基础
- 黑马程序员--java基础之网络通讯
- java基础_13_网络协议 (UDP_TCP)
- TCP、UDP协议,java网络通信基础
- 网络通讯协议定义语言及代理代码生成器
- TCP/IP协议、socket及socket简单实现网络通讯
- 网络及网络协议
- java网络通讯
- java 网络通讯
- JAVA网络通讯
- java 网络通讯
- java网络编程详解(分层,TCP/IP,网络基础,协议)
- 网络通讯更自由 谈Java串行端口技术协议
- 转:LoadRunner响应时间与用户体验时间不一致问题的深入分析
- 聊一聊分片存储的话题
- android使用zxing二维码扫一扫功能
- CJOJ 1275【HAOI2006】旅行
- 微信公众开发 41005 media data missing的解决办法
- java基础----网络协议及网络通讯
- cmd 运行java .class文件 错误:找不到或无法加载主类
- 一列布局
- java volatile
- Java重写和重载
- Android上传图片的问题老是报错,求大神们赐教。
- 汕头市选2012初中组 数数(count) (jzoj)
- java设计模式之外观模式
- Android 获取App相关信息