springboot 学习第1期 - 创建工程

创建项目

进入网址 start.spring.io/

创建Controller

java 复制代码
// controller/HelloController.java
package com.congvee.springboot_hello.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api/hello")
public class HelloController {

    @GetMapping
    public String hello() {
        return "Hello, World!";
    }

}

接口调用

直接启动项目,默认运行在端口 8080 上,使用 postman 进行接口调试

响应统一结构

响应体的一般结构是:

plain 复制代码
{
  "code": 0,
  "message": "success",
  "data": { ... }
}

code 0 表示成功,非 0 表示异常,可以自定义一些异常码。

可以这样定义统一类型:

java 复制代码
// common/ApiResponse.java
package com.congvee.springboot_hello.common;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public class ApiResponse<T> {

    private int code;
    private String message;
    private T data;

    public static <T> ApiResponse<T> success(T data) {
        return new ApiResponse<>(0, "success", data);
    }

    public static <T> ApiResponse<T> error(int code, String message) {
        return new ApiResponse<>(code, message, null);
    }

}

使用lombok注解需要额外引入依赖:

xml 复制代码
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>provided</scope>
    <optional>true</optional>
</dependency>

使用:

java 复制代码
@GetMapping
public ApiResponse<String> hello() {
    return ApiResponse.success("Hello World!");
}

接口调用:

相关推荐
别来无恙1493 小时前
Spring Boot文件下载功能实现详解
java·spring boot·后端·数据导出
weixin_456904274 小时前
Java泛型与委托
java·spring boot·spring
一只爱撸猫的程序猿8 小时前
创建一个使用 Spring AI 配合 Function Calling 的实际场景案例:智能客服助手
spring boot·aigc·ai编程
2501_909686708 小时前
基于SpringBoot的旅游网站系统
vue.js·spring boot·后端
进阶的小名15 小时前
@RequestMapping接收文件格式的形参(方法参数)
java·spring boot·postman
Mr_Air_Boy1 天前
springboot集成xxl-job
java·spring boot·spring
悟纤1 天前
当生产环境卡成 PPT:Spring Boot 线程 Dump 捉妖指南 - 第544篇
java·spring boot·后端
江影影影1 天前
Spring Boot 2.6.0+ 循环依赖问题及解决方案
java·spring boot·后端
null不是我干的1 天前
黑马SpringBoot+Elasticsearch作业2实战:商品搜索与竞价排名功能实现
spring boot·后端·elasticsearch
weixin_422289371 天前
springboot整合rabbitMQ的示例
spring boot·rabbitmq·java-rabbitmq