《Java 实战:用 Spring Boot 快速构建一个 RESTful 接口服务》

🧰 一、项目目标

我们要开发一个「用户信息管理接口」服务,支持以下功能:

  • 获取用户列表(GET /users
  • 创建新用户(POST /users
  • 获取单个用户详情(GET /users/{id}

🚀 二、创建 Spring Boot 项目

使用 Spring Initializr 创建项目,选择依赖项如下:

  • Spring Web
  • Spring Boot DevTools
  • Lombok
  • Spring Validation(可选)

👉 推荐用 IDEA 快速生成。


📁 三、定义实体类 User

kotlin 复制代码
java
复制编辑
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private Long id;
    private String name;
    private Integer age;
}

📦 四、构建 Controller 层

kotlin 复制代码
java
复制编辑
@RestController
@RequestMapping("/users")
public class UserController {

    private final Map<Long, User> userMap = new ConcurrentHashMap<>();

    @GetMapping
    public List<User> getAllUsers() {
        return new ArrayList<>(userMap.values());
    }

    @GetMapping("/{id}")
    public ResponseEntity<User> getUser(@PathVariable Long id) {
        User user = userMap.get(id);
        if (user == null) {
            return ResponseEntity.notFound().build();
        }
        return ResponseEntity.ok(user);
    }

    @PostMapping
    public ResponseEntity<User> createUser(@RequestBody User user) {
        user.setId(System.currentTimeMillis()); // 简单生成 ID
        userMap.put(user.getId(), user);
        return ResponseEntity.ok(user);
    }
}

🧪 五、使用 Postman 测试接口

  • GET /users → 返回所有用户信息
  • POST /users + JSON 参数 → 添加用户
  • GET /users/{id} → 查询单个用户

🛡 六、加上异常处理(全局处理类)

kotlin 复制代码
java
复制编辑
@ControllerAdvice
public class GlobalExceptionHandler {

    @ExceptionHandler(Exception.class)
    public ResponseEntity<String> handle(Exception ex) {
        return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
                             .body("服务器异常: " + ex.getMessage());
    }
}

📚 七、接口返回统一封装(Optional)

为了提升前后端联调体验,我们可以定义统一响应结构:

kotlin 复制代码
java
复制编辑
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ApiResponse<T> {
    private int code;
    private String message;
    private T data;
}

然后在 Controller 中返回:

sql 复制代码
java
复制编辑
return ResponseEntity.ok(new ApiResponse<>(0, "成功", user));

🔧 八、进阶建议

  • 将数据从内存换成数据库(JPA、MyBatis)
  • 加上参数校验(Spring Validation)
  • 接口加上 Swagger 文档(springdoc-openapi-ui)

✅ 总结

本文从 0 到 1 实战构建了一个 Java 后端接口服务,涵盖:

  • Spring Boot 项目结构
  • RESTful 接口设计
  • 参数处理与异常管理
  • JSON 数据返回封装

适合正在学习 Java Web、Spring Boot 的开发者,欢迎点赞 + 收藏 + 关注!🚀


📌 掘金发布小贴士:

  • 添加标签:Java Spring Boot 后端开发 RESTful API
  • 推荐插图或接口示例截图
  • 建议末尾附上完整 GitHub demo 地址(提高专业性)
相关推荐
RainbowSea11 分钟前
跨域问题(Allow CORS)解决(3 种方法)
java·spring boot·后端
掘金-我是哪吒12 分钟前
分布式微服务系统架构第155集:JavaPlus技术文档平台日更-Java线程池实现原理
java·分布式·微服务·云原生·架构
RainbowSea15 分钟前
问题 1:MyBatis-plus-3.5.9 的分页功能修复
java·spring boot·mybatis
前端 贾公子18 分钟前
monorepo + Turborepo --- 开发应用程序
java·前端·javascript
不学会Ⅳ1 小时前
Mac M芯片搭建jdk源码环境(jdk24)
java·开发语言·macos
虫小宝1 小时前
高佣金返利平台监控体系建设:APM、链路追踪与佣金异常预警系统技术实现
java
sniper_fandc2 小时前
SpringBoot系列—入门
java·spring boot·后端
代码的余温3 小时前
Maven引入第三方JAR包实战指南
java·maven·jar
pianmian16 小时前
类(JavaBean类)和对象
java
我叫小白菜7 小时前
【Java_EE】单例模式、阻塞队列、线程池、定时器
java·开发语言