java网络基本知识
2014-09-25 19:15
351 查看
java提供的网络功能有三大类:URL、Socket、Datagram
URL是三大功能中最高级的一种,通过URL ,java程序可以直接送出或读入网络上的数据
Socket是传统网络程序最常用的方式,可以想象为两个不同的程序通过网络的通信信道
Datagram是更低级的网络传输方式,它把数据的目的记录在数据包中,然后直接放在网上
URL编程
在WWW上,每一信息资源都有统一且唯一的地址,该地址就叫URL(Uniform Resource Locator),是WWW的统一资源定位符
URL由4部分组成:资源类型、存放资源的主机域名、资源文件名和端口。
例如,http://61.135.169.125:80/img/baidu_logo.gif
http 表示该资源类型是超文本信息
61.135.169.125(www.baidu.com) 是百度的主机域名
80 表示HTTP协议的端口号
/img/baidu_logo.gif 表示资源文件名
URL类
URLConnection类
使用URL类可以简单地获得信息,但如果在获取到信息的同时还能向远程的计算机节点传送信息,就需要使用URLConnection类
创建URLConnection类的对象,先创建一个URL对象,然后调用该对象的openConnection()方法就会返回一个对应URL地址的URLConnection对象
基于Socket的网络通信
当程序需要建立网络连接时,必须有一台机器运行一个程序,随时等候连接,而另一端的程序则对其发出连接请求,同电话系统类似
建立连接的过程:
服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求
客户端生成一个Socket实例对象,并发出连接请求
服务器端通过accept()方法接收到客户端的请求后,开辟一个接口与之进行连接,并生成所需要的I/O数据流
通信都是通过一对InputStream()和OutputStream()进行的。通信结束后,两端分别关闭对应的Socket接口
Socket通信过程
java简单的C/S的交互
在java中,基于TCP协议实现网络通信的类有两个:在客户端的Socket类和在服务端的ServerSocket类
URL与Socket通信的区别
通信方式
Socket在服务器端运行通信程序,不停地监听客户端的连接请求,等待客户端的连接请求,当客户端提出请求时,马上连接并通信
URL进行通信时,被动等待客户端的请求
连接数
Socket服务器可以同时与多个客户端进行相互通信
URL通信方式是服务器只能与一个客户端进行通信
URL是三大功能中最高级的一种,通过URL ,java程序可以直接送出或读入网络上的数据
Socket是传统网络程序最常用的方式,可以想象为两个不同的程序通过网络的通信信道
Datagram是更低级的网络传输方式,它把数据的目的记录在数据包中,然后直接放在网上
URL编程
在WWW上,每一信息资源都有统一且唯一的地址,该地址就叫URL(Uniform Resource Locator),是WWW的统一资源定位符
URL由4部分组成:资源类型、存放资源的主机域名、资源文件名和端口。
例如,http://61.135.169.125:80/img/baidu_logo.gif
http 表示该资源类型是超文本信息
61.135.169.125(www.baidu.com) 是百度的主机域名
80 表示HTTP协议的端口号
/img/baidu_logo.gif 表示资源文件名
URL类
<span style="font-size:12px;">import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; //URLReader 获取网页并按行打印 public class test { public static void main(String[] args) throws Exception{ //URL数据->InputStreamReader对象->BufferedReader对象->程序处理 URL hfut = new URL("http://www.baidu.com"); InputStreamReader is = new InputStreamReader(hfut.openStream()); BufferedReader br = new BufferedReader(is); String data; //打印输出HTML while((data=br.readLine())!=null) System.out.println(data); //关闭缓冲区 br.close(); } }</span>
URLConnection类
使用URL类可以简单地获得信息,但如果在获取到信息的同时还能向远程的计算机节点传送信息,就需要使用URLConnection类
创建URLConnection类的对象,先创建一个URL对象,然后调用该对象的openConnection()方法就会返回一个对应URL地址的URLConnection对象
<span style="font-size:12px;">import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; </span><pre name="code" class="java"><span style="font-size:12px;">//使用java.net.URLConnection连接到互联网,获取网页并按行打印</span> public class test { public static void main(String[] args) throws Exception{ //URL数据->URLConnection对象->InputStreamReader->BufferedReader URL hfut = new URL("http://www.baidu.com"); URLConnection uc = hfut.openConnection(); InputStreamReader is = new InputStreamReader(uc.getInputStream()); BufferedReader br = new BufferedReader(is); String data; while((data=br.readLine())!=null) System.out.println(data); br.close(); } }
基于Socket的网络通信
当程序需要建立网络连接时,必须有一台机器运行一个程序,随时等候连接,而另一端的程序则对其发出连接请求,同电话系统类似
建立连接的过程:
服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求
客户端生成一个Socket实例对象,并发出连接请求
服务器端通过accept()方法接收到客户端的请求后,开辟一个接口与之进行连接,并生成所需要的I/O数据流
通信都是通过一对InputStream()和OutputStream()进行的。通信结束后,两端分别关闭对应的Socket接口
Socket通信过程
java简单的C/S的交互
在java中,基于TCP协议实现网络通信的类有两个:在客户端的Socket类和在服务端的ServerSocket类
URL与Socket通信的区别
通信方式
Socket在服务器端运行通信程序,不停地监听客户端的连接请求,等待客户端的连接请求,当客户端提出请求时,马上连接并通信
URL进行通信时,被动等待客户端的请求
连接数
Socket服务器可以同时与多个客户端进行相互通信
URL通信方式是服务器只能与一个客户端进行通信
相关文章推荐
- java网络的基本知识
- 《java网络的基本知识》
- Java2实用教程(第二版)程序代码——第二十一章 Java网络的基本知识
- Red Hat Linux基本知识(网络配置,安装appache,mysql,php,zend,jdk,tomcat)
- JAVA基础知识精华总结 C#的四个基本技巧
- java必须懂的基本知识(转)
- 网络基本知识
- 网络安全基本知识
- 网络基本知识(来源书上)
- JAVA30个基本知识(转)
- JAVA30个基本知识
- Java基础小知识——基本数据类型和字符串以及字节数组的转换
- java程序员:开发系统要注意的基本知识
- Java 编码基本知识
- Java的网络知识
- Java基础小知识——基本数据类型和字符串以及字节数组的转换
- 一些网络的基本知识
- 网络基本知识
- 网络编程一些基本知识