面向 Java 程序员的 20 大 Spring REST 面试问题答案

前言:

大家好,过去几周我一直在分享一些 REST 与 Spring 教程,今天,我将分享一些常见的 Spring 和 REST 面试问题给申请 Web 开发人员角色的 Java 开发人员。由于 Spring 框架是开发 Java Web 应用程序和 RESTful Web 服务的最流行和标准框架,因此任何高级 Java 开发人员都希望对 Spring 核心和 Spring MVC 有很好的了解,但是如果工作描述中提到了 REST 和 Web 服务,您还需要了解如何使用 Spring Framework 开发 RESTful Web 服务。从 Spring 3.1 开始,该框架得到了很多增强,以支持开箱即用的 RESTFul API 所需的许多功能,例如
HTTPMessageConverter可以将您的 HTTP 响应转换为 JSON或 XML通过检测类路径中的相关库,例如 Jackson 和 JAXB。

Spring 还为 RESTful Web 服务提供了定制的注解,例如 @RestController它可以让你的控制器感知 REST,这样你就不需要做每个 REST API 所需的常见事情,例如将响应转换为 JSON。

在现实世界中开发和保护 RESTful Web 服务也必须具备良好的 Spring Security 知识。由于您无法在没有安全性的情况下使生活成为一个重要的 REST API,因此对安全基础知识(例如 HTTP 基本身份验证、摘要式身份验证、OAuth 和 JWT)的良好了解非常重要。

20 道 Spring REST Web 服务面试题

这里有几个关于在 Spring Framework 中使用 REST Web 服务的常见问题。
REST 代表什么? (回答)

REST 代表 REpresentational State Transfer,它使用 HTTP 协议将数据从客户端发送到服务器,例如服务器中的一本书可以使用 JSON 或 XML 传递给客户端。

什么是资源? (回答)

资源是数据在 REST 架构中的表示方式。通过将实体公开为资源,它允许客户端使用 HTTP 方法(例如GET、 POST、
PUT、DELETE 等)读取、写入、修改和创建资源 。

什么是安全的 REST 操作? (回答)

REST API 使用 HTTP 方法来执行操作。一些不修改服务器资源的 HTTP 操作称为安全操作,例如 GET 和 HEAD。另一方面, PUT、 POST 和 DELETE 是不安全的,因为它们会修改服务器上的资源。


什么是幂等操作?为什么幂等性很重要?(回答)

有一些 HTTP 方法,例如 GET,无论您使用多少次都会产生相同的响应,例如向同一个 URI 发送多个 GET 请求将导致相同的响应而没有任何副作用,因此它被称为幂等。

另一方面,POST 不是幂等的,因为如果您发送多个 POST 请求,它将导致在服务器上创建多个资源,但同样,如果您使用它来更新资源,PUT 是幂等的。

甚至,更新服务器上资源的多个 PUT 请求将给出相同的最终结果。

REST 是否可扩展和/或可互操作? (回答)

是的,REST 是可扩展和可互操作的。它不要求在客户端或服务器端选择特定的技术。您可以使用 Java、C++、Python 或 JavaScript 创建 RESTful Web 服务并在客户端使用它们。我建议你阅读一本关于 REST API 的好书,例如 RESTful Web Services,以了解更多关于 REST 的信息。

RestTemplate 的优点是什么? 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值