SpringBoot设置http返回码
时间: 2023-07-07 22:23:24 浏览: 105
在Spring Boot应用程序中,可以通过使用`@ResponseStatus`注解或`ResponseEntity`对象来设置HTTP返回码。
1. 使用`@ResponseStatus`注解
`@ResponseStatus`注解用于将特定的异常映射到HTTP状态码。例如,如果要将`MyException`异常映射到HTTP 404状态码,则可以使用以下代码:
```java
@ResponseStatus(HttpStatus.NOT_FOUND)
public class MyException extends RuntimeException {
// ...
}
```
2. 使用`ResponseEntity`对象
`ResponseEntity`对象允许您设置HTTP响应的状态码、头和主体。例如,以下代码演示如何返回HTTP 404响应:
```java
@GetMapping("/not-found")
public ResponseEntity<String> notFound() {
return ResponseEntity
.status(HttpStatus.NOT_FOUND)
.body("Not found");
}
```
上述代码将返回一个带有"Not found"主体的HTTP 404响应。
希望我的回答能够帮助到你。
相关问题
springboot编写返回状态码
200的接口该怎么写?
回答:在Spring Boot中,可以使用@RestController注解来标记一个类,然后使用@RequestMapping注解来标记一个方法,指定该方法的请求路径和请求方法。在方法中,可以使用ResponseEntity来返回指定的状态码和响应体。例如,返回状态码200的接口可以这样编写:
@RestController
public class MyController {
@RequestMapping(value = "/myApi", method = RequestMethod.GET)
public ResponseEntity<String> myApi() {
String response = "Hello World!";
return new ResponseEntity<>(response, HttpStatus.OK);
}
}
springboot 自定义注解返回状态码401
在SpringBoot中自定义注解返回状态码401的方法如下:
```java
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ResponseStatus;
@ResponseStatus(HttpStatus.UNAUTHORIZED)
public @interface CustomAnnotation {
}
```
在上述代码中,我们使用了`@ResponseStatus`注解来指定返回的HTTP状态码为401(UNAUTHORIZED)。然后我们将这个注解命名为`CustomAnnotation`,以便在需要的地方进行使用。
使用自定义注解的示例代码如下:
```java
@RestController
public class MyController {
@GetMapping("/test")
@CustomAnnotation
public String test() {
return "This is a test";
}
}
```
在上述代码中,我们在`test()`方法上使用了`@CustomAnnotation`注解,这样当请求`/test`接口时,如果没有权限,就会返回状态码401。
阅读全文