springboot 响应处理
时间: 2023-10-14 20:09:09 浏览: 72
在 Spring Boot 中,响应处理通常由控制器处理。控制器是一个标记为@Controller的类,它处理来自客户端的请求并生成响应。
下面是一个简单的控制器示例:
```java
@Controller
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello World!";
}
}
```
在此示例中,我们创建了一个名为MyController的控制器类,并在其中定义了一个名为hello的处理程序方法。该方法使用@GetMapping注释标记,指示它处理GET请求到“/hello”端点。该方法返回一个字符串“Hello World!”,这将作为响应发送回客户端。
除了简单的字符串响应之外,控制器还可以返回其他类型的响应,例如JSON、XML或HTML。Spring Boot提供了各种内置的消息转换器,可以将Java对象转换为不同的格式。
例如,要返回JSON响应,我们可以使用@ResponseBody注释标记返回类型,并返回一个包含需要序列化为JSON的数据的对象:
```java
@Controller
public class MyController {
@GetMapping("/hello")
@ResponseBody
public Map<String, String> hello() {
Map<String, String> result = new HashMap<>();
result.put("message", "Hello World!");
return result;
}
}
```
在此示例中,我们将返回类型从String更改为Map<String, String>,并添加@ResponseBody注释标记。方法返回一个Map,其中包含一个名为“message”的键和“Hello World!”的值。Spring Boot将自动将此Map序列化为JSON,并将其作为响应发送回客户端。
除了@ResponseBody注释,Spring Boot还提供了其他注释,例如@ResponseStatus和@ExceptionHandler,可用于自定义控制器中的异常处理和响应状态码。
阅读全文