当前位置: 首页 > news >正文

邢台做网站价位制作公司网站大概多少钱

邢台做网站价位,制作公司网站大概多少钱,wordpress电影bt模板,公司网站建设服务费怎么做账文章目录 前言1、工程包结构2、POM依赖3、Java代码 前言 本篇主要针对前后端分离的项目,做的一个统一响应包装、统一异常捕获处理。 在Spring里,我们可以使用ControllerAdvice来声明一些关于controller的全局性的东西,其用法主要有以下三点…

文章目录

    • 前言
    • 1、工程包结构
    • 2、POM依赖
    • 3、Java代码

前言

本篇主要针对前后端分离的项目,做的一个统一响应包装、统一异常捕获处理。

Spring里,我们可以使用@ControllerAdvice来声明一些关于controller的全局性的东西,其用法主要有以下三点:

1、@ExceptionHandler注解标注的方法:用于捕获Controller中抛出的不同类型的异常,从而达到异常全局处理的目的;
2、@ModelAttribute注解标注的方法:表示此方法会在执行目标Controller方法之前执行;
3、@InitBinder注解标注的方法:用于请求中注册自定义参数的解析,从而达到自定义请求参数格式的目的;

参考:
@ControllerAdvice注解作用及源码解析
@ControllerAdvice 的介绍及三种用法

1、工程包结构

在这里插入图片描述

2、POM依赖

		<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>

3、Java代码

AppExceptionCodeMsg

//这个枚举类中定义的都是跟业务有关的异常
public enum AppExceptionCodeMsg {INVALID_CODE(10000,"验证码无效"),USERNAME_NOT_EXISTS(10001,"用户名不存在"),USER_CREDIT_NOT_ENOUTH(10002,"用户积分不足");;private int code ;private String msg ;public int getCode() {return code;}public String getMsg() {return msg;}AppExceptionCodeMsg(int code, String msg){this.code = code;this.msg = msg;}}

AppException

public class AppException extends RuntimeException{private int code = 500;private String msg = "服务器异常";public AppException(AppExceptionCodeMsg appExceptionCodeMsg){super();this.code = appExceptionCodeMsg.getCode();this.msg = appExceptionCodeMsg.getMsg();}public AppException(int code,String msg){super();this.code = code;this.msg = msg;}public int getCode() {return code;}public String getMsg() {return msg;}}

Resp

import com.atguigu.boot.exception.AppExceptionCodeMsg;public class Resp<T> {//服务端返回的错误码private int code = 200;//服务端返回的错误信息private String msg = "success";//我们服务端返回的数据private T data;private Resp(int code,String msg,T data){this.code = code;this.msg = msg;this.data = data;}public static <T> Resp success(T data){Resp resp = new Resp(200, "success", data);return resp;}public static <T> Resp success(String msg,T data){Resp resp = new Resp(200,msg, data);return resp;}public static <T> Resp error(AppExceptionCodeMsg appExceptionCodeMsg){Resp resp = new Resp(appExceptionCodeMsg.getCode(), appExceptionCodeMsg.getMsg(), null);return resp;}public static <T> Resp error(int code,String msg){Resp resp = new Resp(code,msg, null);return resp;}public int getCode() {return code;}public String getMsg() {return msg;}public T getData() {return data;}}

GlobalExceptionHandler

import com.atguigu.boot.bean.Resp;
import com.atguigu.boot.exception.AppException;
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(value = {Exception.class})@ResponseBodypublic <T> Resp<T> exceptionHandler(Exception e){//这里先判断拦截到的Exception是不是我们自定义的异常类型if(e instanceof AppException){AppException appException = (AppException)e;return Resp.error(appException.getCode(),appException.getMsg());}//如果拦截的异常不是我们自定义的异常(例如:数据库主键冲突)return Resp.error(500,"服务器端异常");}
}

ExpTestController

import com.atguigu.boot.bean.Resp;
import com.atguigu.boot.exception.AppException;
import com.atguigu.boot.exception.AppExceptionCodeMsg;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.Arrays;
import java.util.List;@RestController
public class ExpTestController {@GetMapping("demo")public Resp<String> demo(String name){if("ok".equals(name)){return Resp.success("succ");}if("err".equals(name)){//抛业务相关的异常throw new AppException(AppExceptionCodeMsg.USERNAME_NOT_EXISTS);}if("errcode".equals(name)){throw new AppException(AppExceptionCodeMsg.INVALID_CODE);}if("0".equals(name)){int i=1/0;}//检查用户积分是否足够,如果不够,就抛出异常if("notenough".equals(name)){throw new AppException(AppExceptionCodeMsg.USER_CREDIT_NOT_ENOUTH);}return Resp.success("default");}@GetMapping("list")public Resp<List> list(){List<String> list = Arrays.asList("zhangsan","lisi","wangwu");return Resp.success(list);}
}
http://www.ds6.com.cn/news/76500.html

相关文章:

  • 拓者设计吧电脑版网页seo学校培训
  • 佛山网站设计讯息网络优化这个行业怎么样
  • ac域名的网站有啥不同网络推广平台
  • python做网站内容爬虫关键词搜索名词解释
  • 滁州市建设工程协会网站百度文库网页版
  • wordpress ip验证不当seo诊断a5
  • 象山经济开发区建设有限公司网站郑州网络推广平台
  • 做外贸最适合的网站系统网络营销专业主要学什么
  • 沧浪网站建设怎么推广比较好
  • 网页建设类有哪些软件seo网站推广目的
  • 杭州做企业网站网站搜索引擎优化诊断
  • 外贸网站建设工作计划百度seo关键词优化
  • 做犯法任务的网站seo网站搜索优化
  • 兰州网站排名外包百度排行榜风云
  • 方特网站是谁做的武汉搜索引擎排名优化
  • 邯郸专业做网站哪里有在线建站平台免费建网站
  • wordpress 主题 打包西安seo服务
  • 用asp.net做的网站实例百度号码
  • 做中国旅游网站的目的与必要性国外市场网站推广公司
  • 网站建设seo方案电脑培训班多少费用
  • 无锡网站推付费推广方式有哪些
  • wpsppt网站链接怎么做电商网站建设方案
  • 摄影网站功能设计seo排名计费系统
  • 扁平风网站名优网站关键词优化
  • 电子商务网站的设计工具上海专业网络推广公司
  • 彩票网站怎么做的青岛网络科技公司排名
  • 永川区网站建设咨询seo 网站优化推广排名教程
  • 第三方交易网站怎么做泰安做百度推广的公司
  • 网站流量怎么算的吸引人的软文
  • 网站专题页面用什么做友链对网站seo有帮助吗