ホームページ > Java > &#&チュートリアル > Springboot2.0でカスタム例外を処理してjsonを返す方法

Springboot2.0でカスタム例外を処理してjsonを返す方法

王林
リリース: 2023-05-10 22:19:10
転載
1387 人が閲覧しました

1. カスタム例外クラスを作成します

package cn.jfjb.crud.exception;

public class UserNotExistException extends RuntimeException {
  public UserNotExistException() {
    super("用户不存在");
  }
}
ログイン後にコピー

2. セルフテスト例外を処理します

package cn.jfjb.crud.handler;

import cn.jfjb.crud.exception.UserNotExistException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.HashMap;
import java.util.Map;


@ControllerAdvice
public class MyExceptionHandler {

  @ResponseBody
  @ExceptionHandler(UserNotExistException.class)
  public Map<string> handleException(Exception e) {
    Map<string> map = new HashMap();
    map.put("code", "user.notexist");
    map.put("message", e.getMessage());
    return map;
  }
}</string></string>
ログイン後にコピー

3. application.yml ファイルを設定します (設定しないと例外を取得できません)

server:
 error:
  include-exception: true
ログイン後にコピー

4. テストを作成します

package cn.jfjb.crud.controller;

import cn.jfjb.crud.exception.UserNotExistException;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;


@Controller
public class HelloController {
  
  @RequestMapping({"/testException"})
  public String testException(@RequestParam("user") String user) {
    if (user != "aaa") {
      throw new UserNotExistException();
    }
    return "index";
  }
}
ログイン後にコピー

Springboot2.0でカスタム例外を処理してjsonを返す方法

Springboot2.0でカスタム例外を処理してjsonを返す方法#

以上がSpringboot2.0でカスタム例外を処理してjsonを返す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート