Sprint Boot中的@GetMapping
@GetMapping是Spring Boot中的一个注解,用于将HTTP GET请求映射到特定的处理程序方法上。它可以帮助我们快速创建RESTful API,并处理HTTP GET请求。
使用方法
使用@GetMapping注解非常简单,只需要在处理程序方法上添加该注解,并指定请求的URL路径即可。以下是一个简单的示例:
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, World!";
}
}
在上述示例中,我们创建了一个名为“HelloController”的RESTful API控制器,并在其中添加了一个名为“hello”的处理程序方法。我们使用@GetMapping注解将该方法映射到“/hello”路径上,并在方法中返回“Hello, World!”字符串。
示例1:使用@GetMapping处理HTTP GET请求
以下是一个使用@GetMapping处理HTTP GET请求的示例代码:
@RestController
public class UserController {
private List<User> users = new ArrayList<>();
@GetMapping("/users")
public List<User> getUsers() {
return users;
}
@GetMapping("/users/{id}")
public User getUserById(@PathVariable int id) {
return users.stream()
.filter(user -> user.getId() == id)
.findFirst()
.orElse(null);
}
@PostMapping("/users")
public User addUser(@RequestBody User user) {
users.add(user);
return user;
}
}
在上述示例中,我们创建了一个名为“UserController”的RESTful API控制器,并在其中添加了三个处理程序方法。第一个方法使用@GetMapping注解将其映射到“/users”路径上,并返回用户列表。第二个方法使用@GetMapping注解将其映射到“/users/{id}”路径上,并根据用户ID返回用户信息。第三个方法使用@PostMapping注解将其映射到“/users”路径上,并添加新用户。
示例2:使用@GetMapping处理HTTP GET请求并返回HTML页面
以下是一个使用@GetMapping处理HTTP GET请求并返回HTML页面的示例代码:
@Controller
public class HomeController {
@GetMapping("/")
public String home() {
return "home";
}
}
在上述示例中,我们创建了一个名为“HomeController”的控制器,并在其中添加了一个名为“home”的处理程序方法。我们使用@GetMapping注解将该方法映射到“/”路径上,并返回名为“home”的HTML页面。
结论
在本攻略中,我们详细讲解了Spring Boot中的@GetMapping注解的作用和使用方法,并提供了两个示例说明。@GetMapping注解可以帮助我们快速创建RESTful API,并处理HTTP GET请求。我们可以使用@GetMapping注解将处理程序方法映射到特定的URL路径上,并返回相应的数据或HTML页面。