版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java网络程序设计,Java是一种网络编程能力很强的语言,它能够方便地访问网络资源,这也是Java被广泛应用的重要原因之一,1,网络通信基础,Internet的通信协议是一种四层协议模型,2,应用层(HTTP, FTP, ),传输层 (TCP,UTP),网络层 (IP, ),链路层,Java提供了网络编程支持类,使得程序员在编写网络应用程序时,只需要了解和使用Java提供的网络编程API,而不必关心传输层中TCP与UDP的实现细节,并且所编写的应用程序将独立于任何顶层平台。 TCP,UTP,端口基本概念了解,Java网络通信的支持机制,Java是针对网络环境的程序设计语言,提供了两个不同层次
2、的网络支持机制,3,Java网络应用系统,支持URL的类,网络,支持Socket通信的类,Java网络通信的支持机制,URL层次:支持使用URL访问网络资源类,使得用户不需要考虑URL中标识的各种协议的处理过程,就可以直接获得URL资源信息 Socket层次:Socket表示应用程序与网络之间的接口。Socket通信主要针对客户/服务模式的应用和实现某些特殊协议的应用 支持URL的类实际上也是依赖于下层支持Socket通信的类来实现的,不过这些类中已有几种主要协议的处理,如FTP,HTTP等,4,URL通信机制,URL的基本概念 ftp:/. 由两部分组成,通过:/分隔 第一部分:协议标识(访
3、问资源所用的协议,如HTTP, FTP等) 第二部分:资源名称(表示要访问资源的地址),5,URL对象的创建,Java中定义了URL类来描述URL。一个URL对象表示一个URL地址 URL的构造方法 (1) public URL(String spec); 通过一个表示URL地址的字符串构造一个URL对象 URL urlBase=new URL(“ (2) public URL(URL context, String spec) 通过基地址URL和表示相对路径的字符串构造一个URL对象 URL net263=new URL(“ URL index263=new URL(net263, “ind
4、ex.html”),6,URL对象的创建,(3) public URL(String protocol, String host, String file); 通过协议名、主机名和文件名构造一个URL对象 new URL(“http”, , “/pages/G.html”); (4) public URL(String protocol, String host, int port, String file); 通过协议名、主机名、端口号和文件名构造一个URL对象 new URL(“http”, , 80,“/pages/G.html”);,7,URL的解析,URL类提供了URL对象信息的方法
5、。可以通过以下的方法得到协议、主机号、端口号、文件名等信息 getProtocol() 获取该URL的协议名 getHost() 获取该URL的主机名 getPort() 获取该URL的端口号,如果没有设置,则返回-1 getFile() 获取该URL的文件名 getRef() 获取该URL文件的相对位置,8,从URL读取数据,当成功创建了URL对象后,就可以利用该对象访问网上资源 URL对象的一种最方便的使用是在Applet中,通过调用Applet类的getAudioClip(), getImage(), play()等方法直接读取或操作URL所表示的声音或者图像文件(Applet章节中讲过
6、) 另外,还可以通过URL的openStream()方法,得到java.io.InputStream类的对象,从该输入流读取URL地址数据,9,基于URL Connection的读写,还可以通过URLConnection类,在应用程序与URL之间建立一个连接,对指定URL进行访问 1. 创建到URL的连接对象 2. 从URLConnection读 3.对URLConnection写 URL类和URLConnection类提供了网络上资源的较高层次的访问机制 需要编写低层次的网络通信程序时,需要使用Java提供的基于Socket的通信机制,10,Socket通信机制,Socket通信机制支持两种
7、通信方式 有连接的通信方式(TCP) 无连接的通信方式(UTP),11,有连接的通信方式,Socket是两个进程间通信链的端点,每个Socket有两个流:一个输入流和一个输出流 通过向Socket的输出流写,完成一个进程向其它进程数据的发送 通过读Socket的输入流,一个进程可以读取别的进程发送来的数据 J包中的Socket和SeverSocket两个类支持有连接的通信,有连接通信的4个基本步骤,1. 创建Socket,建立连接 2. 打开连接到Socket的输入/输出流 3. 按照一定的协议对Socket进行读写操作 4. 关闭Socket 典型实例(P341 例11-4,例11-5),数据报通信方式,J包中提供的DatagramSocket和DatagramPacket类支持数据报方式的通信 数据报方式的通信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年国开电大软件测试第四次形考任务答案
- 智能导览系统人工智能在文化遗产保护中的应用研究报告
- 2026年秋招:陕西土地工程建设集团试题及答案
- 2026年吉林九台福利院招聘考试练习试卷(含答案)
- 2026年内蒙古自治区医保局招聘考试练习试卷(含答案)
- 2026年上海社会工作者后勤总务招聘考试练习试卷(含答案)
- 2026年山西大同公交集团招聘考试练习试卷(含答案)
- 2026年上海医保局党群政工专员招聘考试练习试卷(含答案)
- 2026大管实操考试题库及答案
- 境外税收争议协商程序与政策解读
- 2026-2027学年第一学期小学生少先队建队日课件
- 2026年注册安全工程师初级实务真题试卷附答案
- 2026四川省定向乡镇 公共基础知识试题及答案
- 辽宁朝阳市2026-2027学年高三上学期开学英语试题(文字版含答案)
- 养牛疾病防治培训试题与答案
- 深圳报业集团笔试题目答案大全解析
- 2026统考专升本政治:考前冲刺资料
- 设备及管道拆除施工方案
- 临床尿激酶溶栓治疗同意书模板
- 护理带教中的领导力培养
- estro+临床实践指南:脊柱转移瘤的立体定向体部放疗课件
评论
0/150
提交评论