GET请求和POST请求

1、Controller层代码示例

2、注意如果想用get请求来传参,不能使用json数据

3、这里的接收格式表单用@RequestParam,json数据用@RequestBody

import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/api")
public class ApiController {

    // GET 请求示例
    @GetMapping("/hello")
    public String getHello() {
        return "Hello from Spring Boot!";
    }

    // 带参数的 GET 请求
    @GetMapping("/user/{id}")
    public User getUser(
        @PathVariable Long id,
        @RequestParam(required = false) String name
    ) {
        return new User(id, name != null ? name : "Guest");
    }

    // POST 表单请求
    @PostMapping("/login")
    public ResponseEntity handleFormLogin(
        @RequestParam String username,
        @RequestParam String password
    ) {
        if ("admin".equals(username) && "123456".equals(password)) {
            return ResponseEntity.ok().body("Login success");
        }
        return ResponseEntity.status(401).body("Invalid credentials");
    }

    // POST JSON 请求
    @PostMapping("/data")
    public ResponseEntity handleJsonData(
        @RequestBody DataRequest request
    ) {
        return ResponseEntity.ok().body(
            new DataResponse(request.getData() + " processed")
        );
    }
}

// 示例实体类
record User(Long id, String name) {}
record DataRequest(String data) {}
record DataResponse(String result) {}

你可能感兴趣的:(IDEA,java,spring,开发语言)