快捷搜索:  汽车  科技

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)@GetMapping("springcloud")public class HelloController {HelloController 示例代码如下所示:@RestController@RequestMapping("hello")

Spring Boot 全局异常处理入门-初步理解异常处理机制

Spring Boot 全局异常处理入门-实现返回自定义的实体类

前面演示的都是404异常,本文将演示控制器中抛出的业务异常,看看捕获的异常信息。

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(1)

一、新增HelloController控制器

在示例项目中新增HelloController,如图所示。

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(2)

HelloController 示例代码如下所示:

@RestController

@RequestMapping("hello")

public class HelloController {

@GetMapping("springcloud")

public String hello() {

//throw new RuntimeException("业务异常");

return "Spring Cloud Alibaba微服务实战技术专栏,从项目实践出发,包括Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Log日志、分布式全局唯一ID、DDD领域驱动设计等等技术内容,可帮助你对Spring Cloud 微服务技术栈有更加全面和直观的了解。相信你通过本专栏的练习和实践,能够学以致用,提升微服务应用的开发能力。";

}

}

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(3)

启动示例应用,访问http://localhost:8080/hello/springcloud 端点,可以正常返回结果,如图所示:

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(4)

二、在控制器中抛出业务异常

更新一下hello方法,模拟抛出业务异常,代码如下所示:

@RestController

@RequestMapping("hello")

public class HelloController {

@GetMapping("springcloud")

public String hello() {

throw new RuntimeException("业务异常");

//return "Spring Cloud Alibaba微服务实战技术专栏,从项目实践出发,包括Spring Cloud Alibaba、Nacos、Gateway、Sentinel、Log日志、分布式全局唯一ID、DDD领域驱动设计等等技术内容,可帮助你对Spring Cloud 微服务技术栈有更加全面和直观的了解。相信你通过本专栏的练习和实践,能够学以致用,提升微服务应用的开发能力。";

}

}

访问端点http://localhost:8080/hello/springcloud,MyErrorController也可以捕捉到controller中抛出的异常信息,并进行返回,如图所示:

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(5)

springboot局部异常处理(SpringBoot全局异常处理入门-捕获控制器Controller中抛出的异常)(6)

猜您喜欢: