From ef4eb0154b9e6a3e5d99ccc401d28834f4e5c17d Mon Sep 17 00:00:00 2001 From: hinspirit Date: Wed, 12 Apr 2023 23:27:32 +0800 Subject: [PATCH 1/3] =?UTF-8?q?1=E3=80=81=E6=B7=BB=E5=8A=A0=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E8=BF=94=E5=9B=9E=E6=95=B0=E6=8D=AE=202=E3=80=81?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=85=AC=E5=85=B1=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- len-conmon/pom.xml | 35 ++++++ .../com/len/handler/BusinessException.java | 13 +++ .../len/handler/GlobalExceptionHandler.java | 54 +++++++++ .../main/java/com/len/response/Result.java | 86 ++++++++++++++ .../java/com/len/response/ResultCode.java | 109 ++++++++++++++++++ .../src/main/java/com/len/util/DataUtil.java | 5 + pom.xml | 1 + 7 files changed, 303 insertions(+) create mode 100644 len-conmon/pom.xml create mode 100644 len-conmon/src/main/java/com/len/handler/BusinessException.java create mode 100644 len-conmon/src/main/java/com/len/handler/GlobalExceptionHandler.java create mode 100644 len-conmon/src/main/java/com/len/response/Result.java create mode 100644 len-conmon/src/main/java/com/len/response/ResultCode.java create mode 100644 len-conmon/src/main/java/com/len/util/DataUtil.java diff --git a/len-conmon/pom.xml b/len-conmon/pom.xml new file mode 100644 index 0000000..39d2337 --- /dev/null +++ b/len-conmon/pom.xml @@ -0,0 +1,35 @@ + + + 4.0.0 + + lenosp + com.len + lenosp-2.0-SNAPSHOT + + + len-conmon + jar + + len-conmon Maven Webapp + + http://www.example.com + + + UTF-8 + 1.7 + 1.7 + + + + + junit + junit + 4.11 + test + + + + + len-conmon + + diff --git a/len-conmon/src/main/java/com/len/handler/BusinessException.java b/len-conmon/src/main/java/com/len/handler/BusinessException.java new file mode 100644 index 0000000..8d26876 --- /dev/null +++ b/len-conmon/src/main/java/com/len/handler/BusinessException.java @@ -0,0 +1,13 @@ +package com.len.handler; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BusinessException extends RuntimeException { + private Integer code; + private String errMsg; +} diff --git a/len-conmon/src/main/java/com/len/handler/GlobalExceptionHandler.java b/len-conmon/src/main/java/com/len/handler/GlobalExceptionHandler.java new file mode 100644 index 0000000..265c689 --- /dev/null +++ b/len-conmon/src/main/java/com/len/handler/GlobalExceptionHandler.java @@ -0,0 +1,54 @@ +package com.len.handler; + + +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + +import com.len.response.Result; +import com.len.response.ResultCode; + +@ControllerAdvice +public class GlobalExceptionHandler { + /** + * 全局异常处理,没有指定异常的类型,不管什么异常都是可以捕获的 + * @param e + * @return + */ + @ExceptionHandler(Exception.class) + @ResponseBody + public Result error(Exception e){ + //e.printStackTrace(); + System.err.println(e.getMessage()); + return Result.error(); + } + + /** + * 处理特定异常类型,可以定义多个,这里只以ArithmeticException为例 + * @param e + * @return + */ + @ExceptionHandler(ArithmeticException.class) + @ResponseBody + public Result error(ArithmeticException e){ + //e.printStackTrace(); + System.err.println(e.getMessage()); + return Result.error().code(ResultCode.ARITHMETIC_EXCEPTION.getCode()) + .message(ResultCode.ARITHMETIC_EXCEPTION.getMessage()); + } + + /** + * 处理业务异常,我们自己定义的异常 + * @param e + * @return + */ + @ExceptionHandler(BusinessException.class) + @ResponseBody + public Result error(BusinessException e){ + //e.printStackTrace(); + System.err.println(e.getErrMsg()); + return Result.error().code(e.getCode()) + .message(e.getErrMsg()); + } + +} diff --git a/len-conmon/src/main/java/com/len/response/Result.java b/len-conmon/src/main/java/com/len/response/Result.java new file mode 100644 index 0000000..7728ef2 --- /dev/null +++ b/len-conmon/src/main/java/com/len/response/Result.java @@ -0,0 +1,86 @@ +package com.len.response; + +import java.util.HashMap; +import java.util.Map; + +import lombok.Data; + +@Data +public class Result { + + private Boolean success; + + private Integer code; + + private String message; + + private T data; + + /** + * 构造方法私有化,里面的方法都是静态方法 + * 达到保护属性的作用 + */ + private Result(){ + + } + + /** + * 这里是使用链式编程 + */ + public static Result ok(){ + Result result = new Result(); + result.setSuccess(true); + result.setCode(ResultCode.SUCCESS.getCode()); + result.setMessage(ResultCode.SUCCESS.getMessage()); + return result; + } + + /** + * 自定义返回成功与否 + * @param success + * @return + */ + public Result success(Boolean success){ + this.setSuccess(success); + return this; + } + + public Result message(String message){ + this.setMessage(message); + return this; + } + + public Result code(Integer code){ + this.setCode(code); + return this; + } + + public static Result success(T data){ + Result result = new Result(); + result.setSuccess(true); + result.setCode(ResultCode.SUCCESS.getCode()); + result.setMessage(ResultCode.SUCCESS.getMessage()); + result.setData(data); + return result; + } + + public static Result error(){ + Result result = new Result(); + result.setSuccess(false); + result.setCode(ResultCode.COMMON_FAIL.getCode()); + result.setMessage(ResultCode.COMMON_FAIL.getMessage()); + return result; + } + + + +// public Result data(String key,Object value){ +// this.data.put(key,value); +// return this; +// } +// +// public Result data(Map map){ +// this.setData(map); +// return this; +// } +} diff --git a/len-conmon/src/main/java/com/len/response/ResultCode.java b/len-conmon/src/main/java/com/len/response/ResultCode.java new file mode 100644 index 0000000..ea39dea --- /dev/null +++ b/len-conmon/src/main/java/com/len/response/ResultCode.java @@ -0,0 +1,109 @@ +package com.len.response; + +public enum ResultCode { + /* 成功 */ + SUCCESS(200, "成功"), + + /* 默认失败 */ + COMMON_FAIL(999, "失败"), + + /* 参数错误:1000~1999 */ + /** + * 参数无效 + */ + PARAM_NOT_VALID(1001, "参数无效"), + /** + * 参数为空 + */ + PARAM_IS_BLANK(1002, "参数为空"), + /** + * 参数类型错误 + */ + PARAM_TYPE_ERROR(1003, "参数类型错误"), + /** + * 参数缺失 + */ + PARAM_NOT_COMPLETE(1004, "参数缺失"), + + /* 用户错误 */ + /** + * 用户未登录 + */ + USER_NOT_LOGIN(2001, "用户未登录"), + /** + * 账号已过期 + */ + USER_ACCOUNT_EXPIRED(2002, "账号已过期"), + /** + * 密码错误 + */ + USER_CREDENTIALS_ERROR(2003, "密码错误"), + /** + * 密码过期 + */ + USER_CREDENTIALS_EXPIRED(2004, "密码过期"), + /** + * 账号不可用 + */ + USER_ACCOUNT_DISABLE(2005, "账号不可用"), + /** + * 账号被锁定 + */ + USER_ACCOUNT_LOCKED(2006, "账号被锁定"), + /** + * 账号不存在 + */ + USER_ACCOUNT_NOT_EXIST(2007, "账号不存在"), + /** + * 账号已存在 + */ + USER_ACCOUNT_ALREADY_EXIST(2008, "账号已存在"), + /** + * 账号下线 + */ + USER_ACCOUNT_USE_BY_OTHERS(2009, "账号下线"), + + /*部门错误*/ + /** + * 部门不存在 + */ + DEPARTMENT_NOT_EXIST(3007, "部门不存在"), + /** + * 部门已存在 + */ + DEPARTMENT_ALREADY_EXIST(3008, "部门已存在"), + + /* 业务错误 */ + /** + * 没有权限 + */ + NO_PERMISSION(3001, "没有权限"), + + /*运行时异常*/ + /** + * 算数异常 + */ + ARITHMETIC_EXCEPTION(9001,"算数异常"), + /** + * 查询无果 + */ + NO_SEARCH(4001,"查询无果"); + + private Integer code; + + private String message; + + ResultCode(Integer code,String message){ + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } + +} diff --git a/len-conmon/src/main/java/com/len/util/DataUtil.java b/len-conmon/src/main/java/com/len/util/DataUtil.java new file mode 100644 index 0000000..c4fb8f9 --- /dev/null +++ b/len-conmon/src/main/java/com/len/util/DataUtil.java @@ -0,0 +1,5 @@ +package com.len.util; + +public class DataUtil { + +} diff --git a/pom.xml b/pom.xml index 3a7beb0..c530774 100644 --- a/pom.xml +++ b/pom.xml @@ -32,6 +32,7 @@ len-web len-activiti len-blog + len-conmon -- Gitee From 9d97e63331dd0c03b56a9953d7037d4b9b4adee3 Mon Sep 17 00:00:00 2001 From: hinspirit Date: Wed, 12 Apr 2023 23:33:49 +0800 Subject: [PATCH 2/3] ceshi --- .../main/java/com/len/util/ApplicationContextUtil.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/len-core/src/main/java/com/len/util/ApplicationContextUtil.java b/len-core/src/main/java/com/len/util/ApplicationContextUtil.java index 918116d..403e924 100644 --- a/len-core/src/main/java/com/len/util/ApplicationContextUtil.java +++ b/len-core/src/main/java/com/len/util/ApplicationContextUtil.java @@ -6,6 +6,14 @@ import org.springframework.context.ApplicationContextAware; public class ApplicationContextUtil implements ApplicationContextAware { + + + + + + + + private static ApplicationContext applicationContext; public static ApplicationContext getContext() { -- Gitee From 7af2391ad78c9c5a3e8936e6a2d53464485e17d5 Mon Sep 17 00:00:00 2001 From: hinspirit Date: Wed, 12 Apr 2023 23:35:53 +0800 Subject: [PATCH 3/3] ceshi2 --- .../main/java/com/len/util/ApplicationContextUtil.java | 8 -------- 1 file changed, 8 deletions(-) diff --git a/len-core/src/main/java/com/len/util/ApplicationContextUtil.java b/len-core/src/main/java/com/len/util/ApplicationContextUtil.java index 403e924..918116d 100644 --- a/len-core/src/main/java/com/len/util/ApplicationContextUtil.java +++ b/len-core/src/main/java/com/len/util/ApplicationContextUtil.java @@ -6,14 +6,6 @@ import org.springframework.context.ApplicationContextAware; public class ApplicationContextUtil implements ApplicationContextAware { - - - - - - - - private static ApplicationContext applicationContext; public static ApplicationContext getContext() { -- Gitee