网络编程(c/s)与网站编程(b/s)的区别?
网站编程是编写网页html,jsp,servelet等,只需要编写一端(server端),不需要编写client端,已经编写好了
网络编程相对底层一些,服务端和客户端都需要编写,比如说QQ,msn,飞秋。网络编程又叫Tcp/ip编程
TCP/IP协议是一种可靠的网络协议
UDP协议是一种不可靠的网络协议
TCP协议作用:在计算机之间建立起发送数据和接收数据的虚拟链路,确保数据在传输过程中准确无误
IP协议作用:使用internet成为一个允许连接不同类型的计算机和不同操作系统的网络(所有的计算机都得使用同一种语言,发送消息、接收消息)
TCP和IP协议在功能上是互补的,只有两者结合,才能保证internet在复杂的环境下正常运行
Socket和ServerSocket
建立客户端和服务器端
建立连接后,通过Socket中的IO流进行数据的传输
关闭socket
同样,客户端与服务器端是两个独立的应用程序。
1:建立服务器端的socket服务,需要一个端口
2:服务端没有直接的操作,而是通过accept方法获取客户端对象,在通过获取到的客户端对象的流和客户端进行通信
3:通过客户端获取流对象的方法,读取数据或者写入数据
4:如果服务完成,需要关闭客户端,然后关闭服务器,但是,一般会关闭客户端,不会关闭服务器,因为服务端是一直提供服务的
建立客户端的Socket服务,并明确要连接的服务器。
2:如果连接建立成功,就表明,已经建立了数据传输的通道.就可以在该通道通过IO进行数据的读取和写入.该通道称为Socket流,Socket流中既有读取流,也有写入流.
3:通过Socket对象的方法,可以获取这两个流
4:通过流的对象可以对数据进行传输
5:如果传输数据完毕,关闭资源