大家好,我又回到了另一个分步计划。
如果您有兴趣或计划学习春季数据,请查看我以前的文章
tl; dr
如果您急忙跳到播放列表:
API无处不在!
无处不在。一切都朝着 x-as-a-service转向。
所以,要么您拥有API,要么要消耗API。
虽然有一些解决方案,例如GraphQL,GRPC,REST仍然是最受欢迎的解决方案之一。
并将其扩展到Java',有不同的方法来开发API,但是Spring Boot是开发API的最广泛使用的框架。
如果您是初学者或只是想刷新基础知识,那么您就可以在正确的位置。
在本文中,我们将介绍Spring Boot API的基本知识。到本文结尾,您将能够编写自己的API。
在微服务区域中学习和探索太多了。构建API可能是第一步。
开始,这是我们需要的最低限度:
-
春季启动项目
-
如何处理和处理请求?
-
如何从传入请求中读取和消费参数或数据?
-
如何返回良好的响应?
-
如何处理异常和错误?
步骤1 [@RestController]
要启动,我们需要踩一个春季启动项目,我们需要添加正确的依赖项。
一旦我们有了项目,接下来就是如何处理和处理请求?
好吧,我们创建了一个控制器。什么是控制器?
控制器是一个Java类,用@RestController注释注释。该注释告诉Spring,此类能够处理传入的请求。
拥有RestController是不够的。它将拦截请求,但是在那之后该怎么办?
要处理请求,我们需要控制器类中的方法。而且,为了调用该方法,我们需要另一种注释将其与传入请求的HTTP方法类型绑定。例如,如果这是http获取请求,那么我们需要用@getMapping注释该方法。
步骤2 [@requestmapping]
您一定已经在API呼叫中看到了URL。 API如何将这些URL转换为我们在步骤1中创建的控制器?
?还有另一个注释 @requestmapping。通过此注释,我们为控制器和方法定义了URL模式,这些URL模式将决定要调用哪种控制器和方法以处理请求。
步骤3 [@requestparam&@pathvariable]
现在,我们需要使其动态。我们需要能够从传入请求中消耗数据/参数。
有不同的方法可以在请求中传递数据,请求参数和路径变量是最常见的。
在这里学习如何使用@requestparam和@pathvariable注释。
步骤4 [@postmapping&@requestbody]
现在,我们取得了一些进步。我们的API现在正在形成一些形状。
让我们看看如何创建资源以及如何处理HTTP POST请求。
我们使用@postmapping来执行此操作。
步骤5 [@Responseentity]
这不是强制性的,而是一个知识。
@Responseentity使我们可以灵活地控制我们返回的响应。
在这里是一个快速的演示。
步骤6 [@controllerAdvice&@exceptionHandler]
都很好吗?不?那我们该怎么办?
是的,当它不全部时,我们该怎么办?如何优雅处理错误和例外?
我们不仅想处理异常情况,而且要以干净的有意义的方式报告它们,以便客户可以从中有意义并确定相应的做法。
@controllerAdvice和@ExceptionHandler注释提供了一种处理异常的方法,并以干净且一致的方式返回错误响应。
您已经准备好了!
不是开玩笑,你是!
这些是构建块。如果您对这些概念和注释感到满意,请相信我,您准备使用Spring Boot开发自己的REST API。
我们尚未涵盖的安全性,发现,Hateoas,但这不是详尽的指南。
一旦感到舒适,最后一步就是开发演示API。
需要任何帮助吗?观看此视频,该视频使用Spring Data JPA涵盖了具有MySQL DB连接的演示API。
快乐学习!