// 引入必要的包 import org.springframework.boot.web.servlet.error.ErrorController; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; // 自定义异常处理器 @Controller public class CustomErrorController implements ErrorController { // 错误路径 private static final String ERROR_PATH = "/error"; // 处理错误请求 @RequestMapping(value = ERROR_PATH) public String handleError() { // 处理错误逻辑 return "error"; } // 获取错误路径 @Override public String getErrorPath() { return ERROR_PATH; } }
SpringBoot中使用AOP实现日志记录
// 引入必要的包 import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.springframework.stereotype.Component; // AOP切面类 @Aspect @Component public class LogAspect { // 前置通知 @Before("execution(* com.example.controller.*.*(..))") public void logBefore(JoinPoint joinPoint) { // 获取方法名 String methodName = joinPoint.getSignature().getName(); // 记录日志 System.out.println("开始调用方法:" + methodName); } // 后置通知 @AfterReturning(value = "execution(* com.example.controller.*.*(..))", returning = "result") public void logAfterReturning(JoinPoint joinPoint, Object result) { // 获取方法名 String methodName = joinPoint.getSignature().getName(); // 记录日志 System.out.println("方法:" + methodName + "调用成功,返回结果:" + result.toString()); } }
SpringBoot中使用Swagger2生成API文档
// 引入必要的包 import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; // API文档示例Controller @Api(tags = "用户管理接口") @RestController @RequestMapping("/users") public class UserController { // 获取用户列表 @ApiOperation("获取用户列表") @GetMapping("/") public List以上是关于SpringBoot相关的几个示例,分别介绍了自定义异常处理器、AOP实现日志记录和Swagger2生成API文档的用法。这些功能在SpringBoot开发中非常常见,希望对你有帮助。getUsers() { // 获取用户列表逻辑 return userService.getUsers(); } // 获取用户详情 @ApiOperation("获取用户详情") @GetMapping("/{id}") public User getUser(@PathVariable("id") Long id) { // 获取用户详情逻辑 return userService.getUserById(id); } }