@Api 注解用于类上,描述了整个控制器的基本信息。
@ApiOperation 注解用于方法上,描述了具体 API 操作的详细信息。
注解中的主要属性包括:
value:对操作的简单描述。
notes:对操作的详细说明。
response:指定返回类型的类。
responseContainer:指定返回类型是单个对象还是集合(如 List)。
@RestController
@RequestMapping("/api")
@Api(value = "用户管理", tags = {
"用户管理"})
public class UserController {
@GetMapping("/users")
@ApiOperation(value = "获取所有用户", notes = "返回所有用户的信息", response = User.class, responseContainer = "List")
public List<User> getAllUsers() {
// 方法实现
return new ArrayList<>();
}
}
@RequiredArgsConstructor
是 Lombok 库中的一个注解,用于自动生成一个包含所有 final 字段和带有 @NonNull 注解字段的构造函数:
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
public class UserService {
private final UserRepository userRepository;
private final EmailService emailService;
}
@RequestMapping
1.用在类上时,它定义了该控制器所有处理请求的公共前缀
2.用在方法上时,它定义了具体的请求路径和处理方法
@RestController
@RequestMapping("/api")
public class MyController {
@RequestMapping(value = "/hello", method = RequestMethod.GET)
public String hello() {
return "Hello, World!";
}
}
/api/hello 这个 URL 将映射到 hello 方法。
@RequestMapping注解有许多属性,常用的包括:
value 或 path:指定请求的 URL 路径。
method:指定 HTTP 请求的方法(如 GET、POST 等)。
params:指定请求的参数。
headers:指定请求头。
consumes:指定处理请求的提交内容类型(Content-Type)。
produces:指定返回请求的内容类型(Accept)。
@RequestMapping(value = "/users", method = RequestMethod.POST