• SpringBoot(十四)-----异常处理


    SpringBoot一共有五种异常处理的方式

    方式一:@ControllerAdvice+@ExceptionHandler 注解处理异常

    GlobalExceptionHandler.java

    package com.zk.myspringboot002;
    
    import java.util.HashMap;
    import java.util.Map;
    
    import org.springframework.web.bind.annotation.ControllerAdvice;
    import org.springframework.web.bind.annotation.ExceptionHandler;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    //全局捕获异常
    @ControllerAdvice
    public class GlobalExceptionHandler {
    	@ExceptionHandler(RuntimeException.class)
    	@ResponseBody
    	public Map<String,Object> resultError(){
    		Map<String,Object> result=new HashMap<String,Object>();
    		result.put("errorCode", "500");
    		result.put("errorMsg", "系统错误");
    		return result;
    	}
    }
    

     SpringBootApplicationTwice.java

    package com.zk.myspringboot002;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    
    @EnableAutoConfiguration
    @SpringBootApplication
    public class SpringBootApplicationTwice {
    	public static void main(String[]args){
            SpringApplication.run(SpringBootApplicationTwice.class, args);
        }
        public static void run(String...arg0) {
            System.out.println("Hello world from Command Line Runner");
        }
    }
    

     TestController.java

    package com.zk.myspringboot002;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    //标识该接口全部返回json格式
    @RestController
    public class TestController {
    	
    	@RequestMapping("/success")
    	public String success() {
    		return "success";
    	}
    	
    	@RequestMapping("/getMap")
    	public Map<String,Object> index() {
    		Map<String,Object> result=new HashMap<String,Object>();
    		result.put("errorCode", "200");
    		result.put("errorMsg", "message");
    		return result;
    	}
    	
    	
    	
    	@RequestMapping("/fail")
    	public String error() {
    		int i=1/0;
    		return "error";
    	}
    }
    

      pom.xml

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>myspringboot002</groupId>
      <artifactId>myspringboot002</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <parent>
      	<groupId>org.springframework.boot</groupId>
      	<artifactId>spring-boot-starter-parent</artifactId>
      	<version>1.3.3.RELEASE</version>
      </parent>
      <dependencies>
      	<dependency>
      		<groupId>org.springframework.boot</groupId>
      		<artifactId>spring-boot-starter-web</artifactId>
      	</dependency>
      	<dependency>
      		<groupId>org.springframework.boot</groupId>
      		<artifactId>spring-boot-starter-freemarker</artifactId>
      	</dependency>
      </dependencies>
    </project>
    

      运行结果如下:

     

  • 相关阅读:
    D3.js比例尺 定量比例尺 之 线性比例尺(v3版本)
    D3.js的基础部分之数组的处理 集合(Set)(v3版本)
    D3.js的基础部分之数组的处理 映射(Map)(v3版本)
    D3.js (v3)+react框架 基础部分之认识选择集和如何绘制一个矢量图
    D3.js的一些基础部分 (v3版本)
    Flask 教程 第九章:分页
    Flask 教程 第八章:粉丝
    Flask 教程 第七章:错误处理
    Flask 教程 第六章:个人主页和头像
    Flask 教程 第五章:用户登录
  • 原文地址:https://www.cnblogs.com/longlyseul/p/14130355.html
Copyright © 2020-2023  润新知