黑马程序员技术交流社区

标题: 网络编程简单总结 [打印本页]

作者: sss18310878521    时间: 2015-6-19 21:17
标题: 网络编程简单总结
网络编程:Socket编程: 套接字编程

        网络编程三要素:
                IP地址:
                        32位或者128位表示一个IP地址, 转换成32位十进制显示, 128位 16进制显示
                端口号:
                        每个与网络相关的程序,都是数据的入口与出口,就是端口号
                协议:
                        UDP:
                                速度快
                                不安全,会丢数据
                                面向无连接
                                数据报包形式传输,大小64KB限制
                        TCP:
                                速度稍慢
                                安全, 不会丢数据、
                                三次握手协议
                                可以传输大数据量的文件数据
   使用UDP协议完成数据的传输
                        发送端:
                                1:创建发送端DatagramSocket对象
                                2: 创建数据报包 DatagramPacket对象
                                3: 发送数据报包  send(dp)
                                4: 释放资源
                        接收端:
                                1: 创建接收端DatagramSocket对象
                                2:创建空的数据报包 DatagramPacket对象
                                3: 接收数据报包, 把数据存储到空的数据报包
                                4:解析数据报包的数据
                                         获取IP地址  dp.getAddress(). getHostAddress()
                                         获取数据:  dp.getData()
                                         数据数据的长度: dp.getLength()
                                5: 释放资源
               
                使用TCP协议完成数据的传输
                        客户端:
                                1:创建客户端的Socket对象
                                2: 获取输出流, 写数据
                                3: 释放资源
                               
                        服务器端:
                                1: 创建服务器端ServerSocket对象
                                2:  等待客户端的连接
                                3:  获取客户端的输入流对象, 获取数据:
                                4:  显示数据(其他操作【把数据写到文件中】)
                                5:  释放资源
                               
                注意事项:
                                1:在使用read()或者readLine()方法的时候,这两个方法为阻塞方法,可能会导致程序无限等待
                              我们可以通过 shutDownOutput() 或者 shutDownInput() 来告知对方数据已完毕
                               
                                2: 在操作文件相关的流时, 必须关闭流               
                       



作者: 1958078929    时间: 2015-6-20 06:57
谢谢分享
作者: 陌上桑    时间: 2015-6-20 08:43
Good Good  Good
作者: 乔栋    时间: 2015-6-20 11:35
O(∩_∩)O谢谢 分享 。赞个。。。
作者: 乔栋    时间: 2015-6-20 11:37
陌上桑 发表于 2015-6-20 08:43
Good Good  Good

good good good
toLowerCase()




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2