1995年,Java真正横空出世,它是顺应互联网时代顺势而为。Java语言的很多特性都跟互联网紧密关联,Java语言的安全性、强大网络编程能力等都对互联网有着积极的影响。本文就是简介地探讨Java的网络编程,主要围绕Java网络编程基础、如何利用Java实现TCP和UDP通信、如何实现多个客户端交互等问题展开。
1 Java网络编程基础
谈及网络编程,我们需要熟悉这几个名字。
IP和端口:IP是用来标示计算机,而端口是用来标示某个计算机上面的特定应用。至于它们的详细介绍,可以查阅相关资料。总之,网络上通信和交互,就是指计算机上端口之间通信与交互。
客户端和服务端:客户端就是享用服务的计算机,而服务端就是提供服务的计算机。客户端和服务端,可以简称为C/S模型。另外,还有一类模型,即B/S模型,利用各种浏览器来享用服务的方式。
TCP和UDP:TCP,传输控制协议,是一种面向连接的可靠传输协议,UDP,用户数据包协议,是一种无连接的不可靠的传输协议。根据不同的应用场景和对于应用的具体要求,选择合适的通信协议。比方说,对于那种注重可靠性,应该选择TCP方式,而对于那种能够容纳一定程度的差错,同时注重传输速度,应该选择UDP方式。
2 利用Java实现TCP和UDP通信
Java网络编程的类和接口,都放在Java.io包里面。
TCP通信的类:java.io.ServerSocket和java.io.Socket类;而UDP通信的类java.io.DatagramPacket和java.io.DatagramSocket类。
3 多个客户端交互问题
利用Java多线程、JavaI/O和Java网络编程综合设计与应用,以实现多个客户端的交互。
总结:
1)Java网络编程,又称为套接字编程。基于不同的协议,实现通信方式。
2)Java网络编程,实现了桌面应用程序的互联网化。