发布时间

用 Spring Boot 写一个简单接口

作者
  • 头像
    姓名
    龙祥
    X

写 Spring Boot 接口时,最常见的是使用 @RestController。它表示这个类用来处理 HTTP 请求,方法返回的对象会自动转换成 JSON。

最简单的接口

@RestController
@RequestMapping("/api/users")
public class UserController {

  @GetMapping("/hello")
  public String hello() {
    return "hello spring boot";
  }
}

启动项目后,请求 /api/users/hello 就能得到返回内容。

接收参数

查询参数可以用 @RequestParam

@GetMapping("/search")
public String search(@RequestParam String keyword) {
  return "搜索关键词:" + keyword;
}

路径参数可以用 @PathVariable

@GetMapping("/{id}")
public String detail(@PathVariable Long id) {
  return "用户 ID:" + id;
}

POST 请求里的 JSON 通常用 @RequestBody 接收:

@PostMapping
public User create(@RequestBody User user) {
  return user;
}

返回结果

真实项目里一般不会直接返回字符串,而是统一返回对象,比如状态码、提示信息、数据内容。这样前端处理起来更稳定。

public record ApiResult<T>(Integer code, String message, T data) {}

我的理解

Controller 层要尽量薄一点,主要负责接收参数、调用 service、返回结果。复杂业务逻辑放到 service 里,后面接口变多时结构会更清楚。