zoukankan      html  css  js  c++  java
  • 【幻化万千戏红尘】qianfengDay23-java基础学习:网络编程、TCP IP协议、端口Socket、ServerSocket

    课程回顾:
    线程安全的解决


    今日内容:
    网络:
    通过外部的网络设备,将分布在不同区域的计算机连接在一起,
    实现不同计算机之间的数据交互
    不同的计算机想进行数据的交互,就必须得遵守相同的通信协议

    TCP/IP协议:传输控制协议/网际协议
    网络模型:
    用书糊口
    4层模型    五层模型     七层模型
    应用层           应用层和表示层和会话层
    传输层
    互联网层
    数据接口层   数据链路层和物理层

    网络结构的程序分类:
    1、B/S:浏览器/服务器
    2、C/S:客户端/服务器

    TCP/IP协议:是目前网络中使用最为广泛的通信协议
    Transmission Control Protocal 传输控制协议
    控制数据的传输
    TCP是在不可靠的互联网中提供可靠的数据传输的协议
    面向连接的,端到端数据传输client-server
    TCP的三次握手(连接):
    客户端先向服务端发送请求连接
    服务端接收到之后,开辟存储单元,并返回消息
    客户端接收到之后,会给服务端发送确认消息
    一共是三次

    Internet Protocol 网际协议 ip地址
    IP地址:网络中计算机的标记,用于区分网络中计算机
    32位组成,一般分为4部分,每部分的范围[0,255]
    我们日常使用的IP都是十进制
    IP的分类:
    1类:政府机关:0---126
    2类:中等规模的公司128-191
    3类:个人192-223
    4类:组播224-249
    5类:实验室250-255
    127.0.0.1或localhost都是指的本机


    端口号:具有网络功能的软件的标记
    计算机端口数:256*256
    端口号的范围[0,65535]
    0-1023:目前已经被公认的或即将被公认的软件
    1024-65535:任何软件都可以使用

    通过IP和端口我们才可以定位计算机的某个软件

    InetAddress类:互联网地址
    IP地址的描述类
    常用方法:
    getLocalHost:获取本机的IP对象
    getHostAddress:获取对象的IP地址字符串
    getHostName:获取对象的主机名称
    getByName:获取指定名称的IP对象
    getAllByName:获取指定名称的所有IP对象


    套接字:程序进行网络连接实现的数据交互,数据交互的一端就是套接字
    简而言之:就是用于2个程序之间进行数据交互的端
    将数据写入到套接字中,套接字会将数据传输到指定的套接字中
    TCP:Client-Server
    TCP协议就是将数据在客户端和服务端进行交互的一种协议
    Socket:应用客户端
    ServerSocket:应用服务端


    TCP开发步骤:
    1、创建套接字(连接)
    2、获取对应的流对象
    3、操作对应的流
    4、关闭

    Socket套接字:实现数据的交互,主要应用在客户端
    常用构造:
    Socket(String host, int port)
    参数说明:
    第一个参数:服务器的IP地址
    第二个参数:服务端程序的端口号

    常用方法:
    getInputStream:获取输入流,用于读取信息
    getOutputStream:获取输出流,用于发送消息
    close:关闭套接字

    ServerSocket:服务端套接字
    常用构造:
    ServerSocket(int port)
    创建对象并监听端口号
    常用方法:
    accept: 监听客户端的连接
    close:关闭

    1对1聊天
    read方法,如果套接字无关闭,无法读取到文件的末尾
    文件传输:
    流读取要发送的文件内容
    将读取到的内容写出到套接字中
    接收端从套接字中读取文件的内容
    再通过流写出到本地

    周四:
    Sqlite数据库+反射
    周五:
    HTML+Servlet

    下周内容:
    Http协议+Servlet
    XML解析
    JSON解析
    正则表达式


     

  • 相关阅读:
    Java 简单算法--打印乘法口诀(只使用一次循环)
    Java简单算法--求100以内素数
    ubuntu 16.04 chrome flash player 过期
    java 网络API访问 web 站点
    java scoket (UDP通信模型)简易聊天室
    leetcode1105 Filling Bookcase Shelves
    leetcode1140 Stone Game II
    leetcode1186 Maximum Subarray Sum with One Deletion
    leetcode31 Next Permutation
    leetcode834 Sum of Distances in Tree
  • 原文地址:https://www.cnblogs.com/weigongcheng/p/5759843.html
Copyright © 2011-2022 走看看