当前位置: 首页 > news >正文

Java面试题——计网篇2

1.get和post请求的区别

  1. 用途不同

    • GET请求用于从服务器获取数据,它不会改变服务器上的数据。
    • POST请求用于向服务器提交数据,通常用于修改服务器上的数据。
  2. 数据传输方式不同

    • GET请求将数据附加在URL后面,通过问号(?)分隔URL和传输数据,参数之间用&符号连接。这种方式使得GET请求的数据容易被看到,因此不太安全。
    • POST请求将数据放在HTTP请求的包体内,即请求体(request body)中,这使得数据不易被外部观察到,相对安全。
  3. 数据大小限制不同

    • GET请求提交的数据大小通常有限制,最大约为2KB(实际限制取决于浏览器)。
    • POST请求理论上没有数据大小限制。
  4. TCP数据包发送方式不同

    • GET请求产生一个TCP数据包,浏览器会将HTTP头和数据一起发送给服务器,服务器响应状态码通常是200(返回数据)。
    • POST请求产生两个TCP数据包,浏览器先发送HTTP头,服务器响应100 Continue,然后浏览器再发送数据,服务器响应状态码通常是200 OK(返回数据)。
  5. 缓存机制不同

    • GET请求会被浏览器自动缓存,除非有特定的缓存控制指令。
    • POST请求默认不会被浏览器缓存,除非开发者手动设置。
  6. 幂等性不同

    • GET请求是幂等的,意味着对同一URL的多次请求应该具有相同的效果,不会改变服务器状态。
    • POST请求不是幂等的,多次提交相同的POST请求可能会产生不同的结果,比如多次添加相同的数据。

幂等性的概念在这里被解释为:对同一个资源的多次请求应该产生相同的副作用。因此,使用GET请求进行数据的增删改操作是不恰当的,因为GET请求是幂等的,网络不佳时可能会重试,导致重复操作和副作用。而POST请求则适用于这类操作,因为它不是幂等的,可以正确处理重复提交的情况。


2.Restful风格

RESTful风格是一种设计网络应用程序的方法,它遵循REST(Representational State Transfer)架构原则。RESTful风格特别适用于设计Web服务,它使得服务更加简洁、直观和可维护。

Java开发RESTful示例:使用 HTTP 动词和状态码 RESTful API 将操作映射到 HTTP 方法(GET、POST、PUT 或 DELETE)并使用 HTTP 状态代码表示结果状态,如 200 OK、404 Not Found 等。


3.NIO、BIO、AIO


http://www.mrgr.cn/news/59436.html

相关文章:

  • 大学新生如何入门编程:选择语言、制定计划及避开学习陷阱
  • k8s和ipvs、lvs、ipvsadm,iptables,底层梳理,具体是如何实现的
  • #网络安全#NGSOC与传统SOC的区别
  • 2025秋招八股文--RPC篇
  • IntelliJ IDEA 2024社区版保姆及图文安装教程
  • 【华为HCIP实战课程二十】OSPF特殊区域NSSA配置详解,网络工程师
  • 【数学二】多元函数积分学-重积分-二重积分定义、性质、计算
  • (50)MATLAB最优延迟迫零均衡器仿真测试与评估
  • React前端框架 – 全面了解与应用
  • [专有网络VPC]创建和管理网络ACL
  • 医疗实施-项目管理06-估算成本
  • Windows 11 绕过 TPM 方法总结,24H2 通用免 TPM 镜像下载 (Updated Oct 2024)
  • Java 泛型
  • PMP--一、二、三模、冲刺、必刷--分类--10.沟通管理--技巧--文化意识
  • 012:无人机航测相关知识点整理
  • 碳中和技术:实现可持续未来的关键
  • 【Linux 从基础到进阶】数据库高可用与灾备方案
  • Spring 版本更新
  • ATom:2016-2018 年沿飞行轨迹的 CAM-chem/CESM2 模型输出
  • 计算机基础——计算机内部基本原理
  • 设计模式4-工厂模式策略模式
  • 2024 BuildCTF 公开赛|Crypto
  • django中的类属性和类方法
  • 【C/C++ explicit关键字】为什么有了explicit关键字的构造函数 就不能再有 其无参构造函数
  • K 线图下的 BBR
  • Nginx 配置初步 下