zoukankan      html  css  js  c++  java
  • 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>
    

      运行结果如下:

     

  • 相关阅读:
    [刷题] IDA*
    [BZOJ1330] Editing a Book
    [BZOJ5449] 序列
    [刷题] 搜索剪枝技巧
    [XJOI3529] 左右
    [CF920E] Connected Components?
    [第18届 科大讯飞杯 J] 能到达吗
    洛谷 P4779 【模板】单源最短路径(标准版)
    洛谷 P1175 表达式的转换
    pipioj 1291 中缀表达式转后缀表达式I
  • 原文地址:https://www.cnblogs.com/longlyseul/p/14130355.html
Copyright © 2011-2022 走看看