




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 概述URL应用Socket应用UDP数据报 第十章Java网络编程 2 概述 TheJavaplatformishighlyregardedinpartbecauseofitssuitabilityforwritingprogramsthatuseandinteractwiththeresourcesontheInternetandtheWorldWideWeb 3 概述 AppletApplet程序嵌在HTML文件中 通过网络下载Applet程序代码 在本地Java enabledbrowser中执行HTTP通过URL类获取服务器端的HTML文件Socket 套接字 实现Client Server结构的应用JDBC JavaDatabaseConnectivity 通过网络访问关系型数据库Oracle MSSQL SybaseServlet JSP JavaServerPage WEB服务器端的动态编程 4 概述 网络基础 TCP IP协议簇网络层 NetworkLayer InternetProtocol IP IP地址 32比特传输层 TransportLayer 传输控制协议 TCP TransportControlProtocol 用户数据报协议 UDP UserDatagramProtocol 端口 Port 16比特 0 65535 应用层 ApplicationLayer HTTP FTP SMTP POP3 Telnet DNS TCPorUDP Port 应用 Port Port Port Port 数据1 应用 应用 应用 Port 数据2 主机 5 概述 Java语言中基本网络类P URL URLC S ServerS DatagramP DatagramS MulticastSocket 6 概述URL应用Socket应用UDP数据报 第十章Java网络编程 7 URL应用 什么是URL 统一资源定位符 UniformResourceLocator areference anaddress apointer toaresourceontheInternet http 协议标识符 资源名 主机名 端口号 文件名 http ftp 8 URL应用 URL类构造方法publicURL Stringspec throwsMalformedURLExceptionpublicURL Stringprotocol Stringhost Stringfile throwsMalformedURLExceptionpublicURL Stringprotocol Stringhost intport Stringfile throwsMalformedURLException 实例方法publicfinalInputStreamopenStream throwsIOExceptionOpensaconnectiontothisURLandreturnsanInputStreamforreadingfromthatconnectionpublicURLConnectionopenConnection throwsIOExceptionReturnsaURLConnectionobjectthatrepresentsaconnectiontotheremoteobjectreferredtobytheURL 9 URL应用 URL类 示例 10 URL应用 实例 importjava io publicclassURLReader publicstaticvoidmain String args throwsException URLpku newURL BufferedReaderin newBufferedReader newInputStreamReader pku openStream StringinputLine while inputLine in readLine null System out println inputLine in close URL类publicfinalInputStreamopenStream throwsIOException 11 URL应用 URL类 实例2 StringBufferdocument newStringBuffer StringurlString try URLurl newURL urlString URLConnectionconn url openConnection BufferedReaderreader newBufferedReader newInputStreamReader conn getInputStream Stringline null while line reader readLine null document append line n reader close catch MalformedURLExceptione System out println UnabletoconnectiontoURL urlString catch IOExceptione System out println IOExceptionwhenconnectedtoURL urlString System out println document toString URL类openStream isashorthandforopenConnection getInputStream 12 URL应用 URL类操作流程 用所要连接资源的有效URL实例化一个URL对象 如有问题则抛出MalformedURLException 打开该URL对象上的一个连接把该连接的InputStream包装进BufferedReader以便能按行读取用BufferedReader读文档关闭BufferedReader 关闭该URL 13 概述URL应用Socket应用UDP数据报 第十章Java网络编程 14 Socket应用 TCP协议从功能上来讲 建立一个可靠的 端到端的通信连接操作系统实现了TCP协议的内容Socket 套接字 代表了TCP所定义的双向通信连接的一个端点通信双方 两台机器 一个作为客户端 一个作为服务器端客户 服务器的本质区别服务器方 Server 总在监听一个特定的端口客户 Client 则向该端口发出连接请求Windows系统TCP UDP连接状态的监测netstat a 15 Socket应用 Socket类表示TCP连接的客户方 Client 和谁连接指定对方的IP地址和端口号publicSocket Stringhost intport throwsUnknownHostException IOExceptionSocket对象包括两个流Socket代表了TCP所定义的双向通信连接的一个端点输入流 读取通过网络进来的数据 publicInputStreamgetInputStream throwsIOException输出流 将数据写入输出流中 并通过网络发送 publicOutputStreamgetOutputStream throwsIOException操作步骤先建立连接进行流的读写操作 16 Socket应用 对客户端对Socket进行读写 实例 ServerSocket LocalhostSocket OutputStream InputStream InputStream OutputStream 客户端 服务器端 17 Socket应用 对客户端对Socket进行读写 实例 importjava io publicclassSimpleClient publicstaticvoidmain Stringargs Sockets newSocket 5432 InputStreamin s getInputStream DataInputStreamdis newDataInputStream in Stringst dis readUTF System out println st in close s close 建立连接 打开输入流 读取输入流 关闭输入流 关闭连接 18 Socket应用 ServerSocket类TCP连接的服务器方 Server 监听端口等待自客户端发来的连接publicServerSocket intport throwsIOException接收连接请求publicSocketaccept throwsIOExceptionListensforaconnectiontobemadetothissocketandacceptsit Themethodblocks 阻塞 untilaconnectionismade服务器端通过所接收到的Socket对象和客户端通信Socket代表了TCP所定义的双向通信连接的一个端点操作步骤监听端口接收连接进行流的读写操作 19 Socket应用 对ServerSocket的实现 实例 客户端 服务器端 20 Socket应用 ServerSockets null Stringhello HelloWorld try s newServerSocket 5432 catch IOExceptione System out println e System exit 1 while true try Socketcs s accept OutputStreamout cs getOutputStream DataOutputStreamdos newDataOutputStream out dos writeUTF hello out close cs close catch IOExceptione System out println e 接收连接 打开输出流 写入输出流 关闭输出流 关闭连接 监听端口 21 Socket应用 客户端与服务器端的实现 客户端 服务器端 22 Socket应用 多线程的服务器实现为每个客户的连接 Socket 分配一个线程 让其独立处理两种实现方式作为java lang Thread类的子类实现java lang Runnable接口 Thread1 Threadn Client1Socket ClientnSocket 1 2 3 1 2 3 23 Socket应用 多线程的服务器实现 实例 ServerSockets newServerSocket 5432 booleanlistening true while listening newServerThread s accept start s close classServerThreadextendsThread publicvoidrun 24 概述URL应用Socket应用UDP数据报 第十章Java网络编程 25 UDP数据报应用 数据报 Datagram 通过UDP协议发送数据报 各个数据报是相互独立 数据报是否到达 可能丢失 到达时间 到达顺序不能保证 DatagramPacket构造一个要发送 接收的数据报对象 DatagramSocket构造一个用于发送 接收数据报的socket对象 MulticastSocket构造一个用于发送 接收组播数据报的socket对象 26 UDP数据报应用 数据报 Datagram 的收 发流程发送构造用于发送的数据报对象 指定要发送的地址和端口号 publicDatagramPacket byte buf intlength InetAddressaddress intport 构造用于发送数据报的socket对象publicDatagramSocket throwsSocketException发送publicvoidsend DatagramPacketp throwsIOException接收构造用于接收的数据报对象publicDatagramPacket byte buf intlength 构造用于接收数据报的socket对象publicDatagramSocket intport throwsSocketException接收publicvoidreceive DatagramPacketp throwsIOExceptionThismethodblocksuntiladatagramisreceived 27 UDP数据报应用 数据报客户端的实现 实例 客户端 服务器端 28 UDP数据报应用 数据报客户端的实现 DatagramSocketsocket newDatagramSocket Strings hello byte buf s getBytes InetAddressaddress InetAddress getByName DatagramPacketpacket newDatagramPacket buf buf length address 6666 socket send packet packet newDatagramPacket buf buf length socket receive packet Stringreceived newString packet getData System out println Received received socket close publicDatagramPacket byte buf intlength InetAddressaddress intport publicDatagramPacket byte buf intlength publicbyte getData publicDatagramSocket throwsSocketExceptionpublicvoidreceive DatagramPacketp throwsIOExceptionpublicvoidsend DatagramPacketp throwsIOException 构造数据报Socket 构造发送数据报 发送 要发送的地址 构造接收数据报 关闭数据报Socket 从数据报中获取数据 接收数据报 29 UDP数据报应用 数据报服务端的实现 实例 客户端 服务器端 30 UDP数据报应用 数据报服务端的实现 DatagramSocketsocket newDatagramSocket 6666 byte buf newbyte 256 DatagramPacketpacket newDatagramPacket buf buf length socket receive packet Stringreceived newString packet getData trim InetAddressaddress packet getAddress intport packet getPort packet newDatagramPacket buf buf length address port socket send packet socket close publicDatagramPacket byte buf intlength InetAddressaddress intport publicDatagramPacket byte buf intlength publicbyte getData publicInetAddressgetAddress publicintgetPort publicDatagramSocket intport throwsSocketExceptionpublicvoidreceive DatagramPacketp throwsIOExceptionpublicvoidsend DatagramPacketp throwsIOException 构造数据报Socket 监听端口 构造发送数据报 得到要发送的地址 构造接收数据报 关闭数据报Socket 接收数据报 接收到的字符串 得到要发送的端口 发送数据报 31 UDP数据报应用 组播数据报 MulticastDatagram 特定的IP地址 组播地址 224 0 0 0 239 255 255 255该IP地址作为组的标识一个应用向一个组播地址 组发送一个消息 所有组成员都能从该组播地址和端口上接收到该消息 该应用可以不是组成员类似与邮件列表当一个应用成为一个组播地址 端口的成员 则它可以接收到其他成员发送的数据报 32 UDP数据报应用 组播数据报 MulticastDatagram MulticastSocket类指定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学龄前儿童心理发展指导手册
- 食品加工企业清洁消毒规范
- 培训机构发展规划书编写与执行监控
- 四年级数学线上教学详细计划表
- 高效液相色谱仪故障诊断操作手册
- 新人教版小学一年级数学测验试卷
- 六年级英语教材内容分析报告
- 2025-2030动力锂电池正极材料技术路线选择与产能扩张规划分析报告
- 2025-2030动力电池梯次利用在储能电站中的安全标准研究
- 2025-2030动力电池梯次利用储能系统安全标准与经济性测算报告
- GB/T 46239.1-2025物流企业数字化第1部分:通用要求
- 2025年汽车制造业供应链风险管理案例分析报告
- 社区精神障碍工作总结
- 2025北京房山区区直部门和乡镇(街道)全日制临聘人员招聘37人考试参考题库及答案解析
- 技术方案评审与验收标准模板
- 癌症患者生活质量量表EORTC-QLQ-C30
- FZ/T 07019-2021针织印染面料单位产品能源消耗限额
- 腰椎间盘突出症课件
- 桂阳县中小幼教师资格定期注册工作指南专家讲座
- 童装原型部分(课堂)课件
- 软件测试用例实例非常详细
评论
0/150
提交评论