欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java 第十五课:Java 网络编程,

来源: javaer 分享于  点击 16815 次 点评:238

Java 第十五课:Java 网络编程,


一、网络分类:
按照地理范围主要将网络分为局域网、城域网、广域网和因特网。

局域网(LocalArea Network)简称 LAN,是一种在小范围内实现的计算机网络,一般在一个建筑物内或者一个工厂、一个事业单位内部独有,范围较小。
城域网(Metropolitan Area Network)简称为 MAN,一般是一个城市内部组建的计算机信息网络,提供全市的信息服务。
广域网(Wide Area Network)简称为 WAN,它的范围很广,可以分布在一个省、一个国家或者几个国家。
因特网(Internet)则是由无数的 LAN 和 WAN 组成的。

二、网络协议
Java.net包提供了两种两种常见网络协议:TCP、UDP

TCP-传输控制协议Transmission Control Protocol):有连接的可靠通讯协议,又被成为TCP/IP协议
UDP-用户数据报协议(User Datagram Protocol):无链接的不可靠协议。

三、socket编程
java.net.Socket 类代表一个套接字,并且 java.net.ServerSocket 类为服务器程序提供了一种来监听客户端,并与他们建立连接的机制。当连接建立时,服务器会创建一个 Socket 对象。客户端和服务器现在可以通过对 Socket 对象的写入和读取来进行通信。
建立TCP连接:

服务器实例化一个 ServerSocket 对象,表示通过服务器上的端口通信。
服务器调用 ServerSocket 类的 accept() 方法,该方法将一直等待,直到客户端连接到服务器上给定的端口。
服务器正在等待时,一个客户端实例化一个 Socket 对象,指定服务器名称和端口号来请求连接。
Socket 类的构造函数试图将客户端连接到指定的服务器和端口号。如果通信被建立,则在客户端创建一个 Socket 对象能够与服务器进行通信。
在服务器端,accept() 方法返回服务器上一个新的 socket 引用,该 socket 连接到客户端的 socket。
连接建立后,通过使用 I/O 流在进行通信,每一个socket都有一个输出流和一个输入流,客户端的输出流连接到服务器端的输入流,而客户端的输入流连接到服务器端的输出流。
注意:TCP 是一个双向的通信协议,因此数据可以通过两个数据流在同一时间发送 。
	public static void javaSocketTest() {
		InetAddress address;
		try {
			address = InetAddress.getByName("www.bing.com");
			System.out.println(address.getHostAddress());
			System.out.println(address.getHostName());
			System.out.println(address.getLocalHost());
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	输出结果:
	202.89.233.101
	www.bing.com
	gchuan-ThinkPad-T470p/127.0.1.1

相关文章

    暂无相关文章
相关栏目:

用户点评