欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第12章Java网络编程.ppt

    • 资源ID:3124400       资源大小:120.02KB        全文页数:19页
    • 资源格式: PPT        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第12章Java网络编程.ppt

    第12章 Java网络编程,学习导读,用Java开发网络软件非常方便且功能强大,Java用于开发网络程序的API均位于包java.net和javax.net中。 在本章中我们将首先介绍Java网络编程中扮演重要角色的InetAddress类,再介绍套接字(Socket)的概念,同时以实例说明如何使用Network API操纵套接字。 最后简单介绍在非连接的UDP协议下如何进行网络通讯。,课程结构,InetAddress类 面对连接的流式套接字 面向非连接的数据报,12.1 InetAddress简介,InetAddress描述了32位或128位IP地址,要完成这个功能,InetAddress类主要依靠Inet4Address 和 Inet6Address两个支持类。 这三个类是继承关系,InetAddrress是父类,Inet4Address 和 Inet6Address是子类。,12.1 InetAddress简介,以通过下面的5个静态方法来创建一个InetAddress对象或InetAddress数组 : (1)getAllByName(String host)方法 (2)getByAddress(byte addr)方法 (3)getByAddress(String host, byte addr)方法 (4)getByName(String host)方法 (5)getLocalHost()方法 上面讲到的方法均提到返回一个或多个InetAddress对象的引用,12.1 InetAddress简介,InetAddress和它的子类型对象处理主机名到主机IPv4或IPv6地址的转换 例:InetAddress ia = InetAddress.getByName(“www.sun.com“); 见例12。1,12.2 面向连接的流式套接字,1 什么是套接字 Socket可以看成在两个程序进行通信连接中的一个端点,一个程序将一段信息写入Socket中,该Socket将这段信息发送给另外一个Socket中,12.2 面向连接的流式套接字,在两个网络应用程序之间发送和接收信息时需要建立一个可靠的连接,流套接字依靠TCP协议来保证信息正确到达目的地。 在C/S程序中,包括了相关联的三个类: InetAddress Socket ServerSocket,12.2 面向连接的流式套接字,2 ServerSocket类 服务器程序套接字 构造函数: ServerSocket(int port);port参数传递端口号 ,如果在这时出现错误将抛出IOException异常对象 接下来服务程序进入无限循环之中。 无限循环从调用ServerSocket的accept()方法开始,在调用开始后accept()方法将导致调用线程阻塞直到连接建立。在建立连接后accept()返回一个最近创建的Socket对象,该Socket对象绑定了客户程序的IP地址或端口号。,12.2 面向连接的流式套接字,例:该程序将创建一个ServerSocket对象来监听端口10000的连接请求,如果成功,服务程序将等待连接输入,开始一个线程处理连接,并响应来自客户程序的命令。 见例12。2,12.2 面向连接的流式套接字,3 Socket类 当客户程序需要与服务器程序通信时,客户程序在客户机创建一个socket对象 构造函数: Socket(InetAddress addr, int port); Socket(String host, int port); 可能通过调用Socket的 getInputStream()方法从服务程序获得输入流读传送来的信息 可能通过调用Socket的 getOutputStream()方法获得输出流来发送消息,12.2 面向连接的流式套接字,例:这个程序将创建一个Socket对象,Socket将访问运行在指定主机端口10000上的服务程序,如果访问成功,客户程序将给服务程序发送一系列命令并打印服务程序的响应 见例12。3,12.3 面向非连接的数据报,1 UDP简介 (User Datagram Protocal) UDP位于第四层传输层,处于IP协议的上一层。 UDP有不提供数据报分组、组装以及不能对数据报排序的缺点。 当报文发送之后,是无法得知其是否安全完整到达的。,12.3 面向非连接的数据报,2 DatagramPacket类 DatagramPacket类用于处理报文,它将Byte数组、目标地址和目标端口等数据包装成报文或者将报文拆卸成Byte数组 构造函数: 1)DatagramPacket(byte buf, int length); 其中buf参数包含了一个对保存自寻址数据报信息的字节数组的引用,length表示字节数组的长度 可以通过调用方法setAddress(InetAddress addr)和setPort(int port)添加上数据报地址和端口信息,12.3 面向非连接的数据报,2)DatagramPacket(byte buf, int length, InetAddress addr, int port) DatagramPacket的常用方法有: getAddress()、setAddress(InetAddress) 得到、设置数据报地址。 getDate()、setDate(byte buf) 得到、设置数据报内容。 getLength()、setLength(ing length) 得到、设置数据报长度。 getPort()、setPort(int port) 得到、设置端口号。,12.3 面向非连接的数据报,3 DatagramSocket类 DatagramSocket类在客户端创建数据报套接字与服务器端进行通信连接,并发送和接受数据报套接字 DatagramSocket构造方法: DatagramSocket() 创建数据报套接字,绑定到本地主机任意存在的端口。 DatagramSocket(int port) 创建数据报套接字,绑定到本地主机指定端口。 DatagramSocket(int port, InetAddress laddr) 创建数据报套接字,绑定到指定本地地址。,12.3 面向非连接的数据报,常用方法: connect(InetAddress address, int port) 连接指定地址。 disconnect() 断开套接字连接。 close() 关闭数据报套接字。 getInetAddress() 得到套接字所连接的地址。 getLocalAddress() 得到套接字绑定的主机地址。 getLocalPort() 得到套接字绑定的主机端口号。 getPort() 得到套接字的端口号。 reseive(DatagramPacket p) 接收数据报。 send(DatagramPacket p) 发送数据报。 见例12。4 例12。5,12.3 面向非连接的数据报,4 多点传送和MulticastSocket类 如果服务器程序要将同一信息发送给多个客户端,那么服务器程序和客户程序可以利用多点传送(multicasting)方式进行通信 网络API通过MulticastSocket类和MulticastSocket,以及一些辅助类(如NetworkInterface)支持多点传送 见例12。6 例12。7,12.3 本章小结,Java的网络功能是非常强大的,它提供了一整套完善的API支持在网络环境下的通信 本章中,我们从两方面介绍了Java的网络编程方法 : 面向连接的流式套接字 面向非连接的数据报,

    注意事项

    本文(第12章Java网络编程.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开