全局异常处理和项目打包部署
一、springboot项目打包部署
使用 Spring Boot 打包和部署应用程序可以按照以下步骤进行:
-
在你的 Spring Boot 项目中确保已经配置好了 Maven 或 Gradle 构建工具。
-
打开终端或命令行界面,进入项目的根目录。
-
执行以下命令进行打包:
-
如果使用 Maven,运行
mvn package命令:Copy Code mvn package -
如果使用 Gradle,运行
gradlew build或gradle build命令:Copy Code gradlew build
这将在项目的 target(Maven)或 build(Gradle)目录中生成一个可执行的 JAR 文件。
-
-
检查打包结果并确认 JAR 文件是否生成成功。
-
将生成的 JAR 文件复制到目标服务器或部署环境中。
-
在目标服务器上使用 Java 命令运行 JAR 文件:
Copy Code java -jar your-application.jar其中,
your-application.jar是你的应用程序的 JAR 文件名。 -
应用程序将会启动并监听配置的端口。你可以通过访问对应的 URL 来验证应用程序是否正常运行。
需要注意的是,部署 Spring Boot 应用程序时,你需要确保目标服务器已经安装了相应版本的 Java 运行时环境(JRE 或 JDK)。另外,你也可以使用一些容器化技术,如 Docker,来更方便地部署和管理 Spring Boot 应用程序。具体的部署方式可以根据你的需求和实际情况进行灵活调整和配置。
注意:如何关掉一个端口所在应用
-
Windows系统:
Copy Code netstat -ano | findstr :8080 taskkill /PID <PID> /F -
Linux或Mac系统:
Copy Code lsof -i :8080 kill -9 <PID>
二、全局异常处理
异常捕捉类:GlobalExceptionHandler.java
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<ErrorResponse> handleException(Exception ex) {
// 异常处理逻辑,例如记录日志、转换异常信息等
ErrorResponse errorResponse = new ErrorResponse(5002, "Internal / 0");
return new ResponseEntity<>(errorResponse, HttpStatus.INTERNAL_SERVER_ERROR);
}
}
异常信息类:ErrorResponse.java
public class ErrorResponse {
private int code;
private String msg;
public ErrorResponse(int code, String msg) {
this.code = code;
this.msg = msg;
}
}
这段代码是一个全局异常处理器(Global Exception Handler),它使用了Spring框架提供的@ControllerAdvice注解来标识这是一个全局异常处理类。
在这个类中,有一个handleException方法被标注了@ExceptionHandler(Exception.class)注解,表示该方法用于处理所有类型的Exception异常。当应用程序中抛出任何Exception类型的异常时,该方法将被调用来处理异常并返回一个自定义的错误响应。
在handleException方法中,你可以编写异常处理逻辑,例如记录日志、转换异常信息等。在这个例子中,它创建了一个ErrorResponse对象,其中包含错误码(5002)和错误消息("Internal / 0")。然后,通过创建一个ResponseEntity对象并将其包装在ResponseEntity中返回,以便返回一个HTTP响应。
作者:vitos