搭建一个REST API服务并不是一件容易的事 - 从顶层设计到使一切工作良好。
REST作为Spring的一等公民,随着平台的完善和伴随着Spring 5的发布,REST现在变的更加健壮和成熟。
本教程从基础开始 - 教你如何搭建REST服务, Spring MVC 配置, 基础自定义。
然后深入REST高级主题 - HATEOAS,分页, 错误处理与测试。
REST API 基础
- 使用Spring 5引导一个Web应用
- 使用Spring和Java配置构建REST API
- Spring @Controller和@RestController注释
- Spring REST错误处理 (热门)
- Spring REST API - Entity实体类 转 DTO
- Spring RequestBody与ResponseBody注解
- Spring Controller 中如何读取HTTP请求头
- 使用@ResponseStatus设置HTTP状态代码
- Spring使用ResponseEntity操作HTTP Response
REST API 高级话题
- Spring REST API配置Swagger 2
- 使用OpenAPI 3.0生成Spring REST API文档
- Spring Request Method Not Supported (405) 问题
- HATEOAS for a Spring REST Service
- REST API 可发现性和 HATEOAS
- REST API 的版本控制
- Spring中的REST分页
- 使用Spring实现REST的ETags
- Spring MVC Content Negotiation
- 使用Protocol Buffers的Spring REST API
- Spring REST API的自定义媒体类型
- Spring REST处理URL编码的表单数据
- 使用Swagger生成Spring Boot项目
- Spring REST API + OAuth2 + Angular前后端分离 (热门)
测试 & 消费API
- 用Java测试REST API
- RestTemplate介绍
- 使用RestTemplate发送JSON POST请求
- RestTemplate Basic认证
- RestTemplate请求获取Object列表
- 使用RestTemplateBuilder配置RestTemplate
- Spring Restemplate错误处理
- Spring RestTemplate上传MultipartFile
- Spring WebClient vs. RestTemplate 对比
- WebClient发起带有参数的请求
- Spring WebClient 过滤器
- WebClient和OAuth2支持
- Spring RestTemplate Request/Response 日志记录
- Java将Http Response Body读取为String类型
其他Spring教程
- Spring持久化教程
使用Spring Hibernate, JPA, Spring Data等构建应用持久层。 - Spring Exception异常系列教程
Spring中常见的异常-为何发生以及如何快速解决它们。 - Spring Security 教程
How to Secure an MVC project, Login and Logout, how to Secure a REST Service, Basic and Digest Authentication with Spring Security 如何保护一个MVC应用,登录和注销,如何保护REST服务,使用Spring Security完成Basic、Digest身份验证。