软件的结构 c/s结构:全程未Client/Server客户端/服务器结构 B/S结构:Browser/Server浏览器和服务器结构 TCP/IP 传输控制协议 ?? UDP ?用户数据报协议 ? 数据的发送端和接收端不需要建立逻辑联系 特点:耗资小 通信效率搞 但是数据被限制在64KB以内不能超过这个范围 ?偶尔会丢失数据包?? ??? ? TCP 协议 传输控制协议 ?因为需要三次握手 所以 他可以保证文件的安全
ipconfig 查看本IP ping 空格 ?ip地址 查看网络是否连接
计算机网络可以连接到一起 那么计算机之间就可以建立 ?了通信 ?注意 我们必须保证数据能准确 无误的发送到对方计算机的软件上 所以我们要借助端口号才可以 当我们使用网络软件 一打开的时候,操作系统会为网络软件分配一个随机的端口号 或者网络软件在打开的时候和系统要指定的端口号 端口是有2个字节组成的 ?取值范围是0-65535
1024之前的端口号我们不能使用 已经被分配给已知的网络 网络的端口号不能重复 ?我们使用IP地址加端口号,就可以保证数据无误的发送到对方的计算机的额指定的软件上了 通讯的步骤: 服务器端先启动 服务器端不会主动的请求客户端 必须使用客户端请求服务器端 ?客户端和服务端就会建立一个逻辑链接 这个链接包含一个对象 这个对象就是IO对象 客户端和服务器端就可以使用 IO对象进行通信 通信的数据不仅仅是字符 所以IO对象是字节流对象
服务器必须声明两件事情: 1.多个客户端同时和服务器进行交互,服务器必须明确和那个客户进行交互,在服务器端有一个方法 叫accept客户端获取到请求的客户端对象 2.多个客户端同时和服务期进行交互,就需要使用多个?? ?IO流对象 服务器是没有IO流的 服务器可以获取到请求的客户端对象Socket 使用每个客户端Socket中提供的IO流和客户端进行交互 服务器使用客户端的字节输入流读取客户端发送的数据 服务器使用客户端的字节输出流给客户端回写数据 简单记;客户端使用客户端的流和客户端交互
网络编程 ?Socket类: TCP 通信的客户端:向服务器发送连接请求,给服务器发送请求,请求服务器回写数据 socket实现客户端套接字:包含了ip地址和端口 构造方法:Scoket(String host ,int port) host:服务器主机的名称/服务器的IP地址 port:服务器的端口号
成员方法:OutputStream getOutputStream()烦恼会此套接字的输出流 InputStream getInputStream() 返回此套接字的输入流 close 关闭 实现步骤:创建一个客户端对象Socket 构造方法绑定服务器的ip地址和端口号 2.手要哪个Socket对象中的方法getOutputStream()获取网络字节输出流OutputStream对象 3.使用网络字节输出流OutputStream()对象中的方法Write,给服务器发送数据 4.使用Socket对象中的方法getInputStream()获取网络字节输入流InputStream对象 5.使用网络字节输入流InputStream对象中的方法read,读取服务器回写的数据 6.释放资源 注意:客户端和服务器端进行交互,必须使用sSocket中提供的网络流,不能使用自己创建的流对象 2.当我们创建客户端对象Socket的时候,就会去请求服务器和服务器经过三次握手建立连接通路 这是如果服务器没有启动,那么就会抛出异常 如果服务器已经启动,那么就可以进行交互了 ?
|