网络开发一般分为用户和服务两端,而这两个端的开发有以下两种不同的架构:
==面试题:请解释C/S和B/S的区别? ==
C/S(Client / Server):要开发两套程序,一套是服务器端,另外一套是与之对应的客户端,但是这种程序在进行维护时需要维护两套程序,而且客户端的程序更新也必须及时,此类程序较为安全;
B/S(Browser / Server):要开发一套程序,只开发服务器端的,客户端使用浏览器进行访问,这种程序进行程序维护时只需要维护服务器端即可,客户端不需要做任何修改,此类程序使用公共端口,包括公共协议,所以安全性很差。
C/S结构的网络开发在java中分为两种:TCP(传输控制协议,可靠地传输)和UDP(数据报协议)。
网络程序的基本实现
要想完成服务器端的开发,则需要java.net包中的两个类
1、ServerSocket类:是一个封装支持TCP协议的操作类,主要工作在服务器端,用于接收客户端请求;
2、Socket类:是一个封装了TCP协议的操作类,每一个Socket对象都表示一个客户端。