From ce56f297f3bf604b087f51245e6ce9bd9d679417 Mon Sep 17 00:00:00 2001 From: ZhouXY108 Date: Mon, 9 Jun 2025 11:37:16 +0800 Subject: [PATCH] =?UTF-8?q?refactor!:=20=E9=87=8D=E5=91=BD=E5=90=8D?= =?UTF-8?q?=E5=A4=9A=E7=B1=BB=E5=9E=8B=E5=BC=82=E5=B8=B8=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 MultiTypesException 重命名为 IMultiTypesException - 将 ExceptionType 重命名为 IExceptionType - 将 ExceptionFactory 重命名为 IExceptionFactory --- README.md | 10 ++++----- ...ionFactory.java => IExceptionFactory.java} | 2 +- ...ception.java => IMultiTypesException.java} | 22 ++++++++++--------- .../exception/ParsingFailureException.java | 6 ++--- .../business/InvalidInputException.java | 8 +++---- .../commons/exception/package-info.java | 10 ++++----- 6 files changed, 30 insertions(+), 28 deletions(-) rename plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/{ExceptionFactory.java => IExceptionFactory.java} (96%) rename plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/{MultiTypesException.java => IMultiTypesException.java} (83%) diff --git a/README.md b/README.md index 64a5581..4fc9b81 100644 --- a/README.md +++ b/README.md @@ -68,16 +68,16 @@ System.out.println(result); // Output: Return string `RegexConsts` 包含常见正则表达式;`PatternConsts` 包含对应的 `Pattern` 对象 ## 五、exception - 异常 -### 1. MultiTypesException - 多类型异常 +### 1. IMultiTypesException - 多类型异常 异常在不同场景下被抛出,可以用不同的枚举值,表示不同的场景类型。 -异常实现 `MultiTypesException` 的 `MultiTypesException#getType` 方法,返回对应的场景类型。 +异常实现 `IMultiTypesException` 的 `IMultiTypesException#getType` 方法,返回对应的场景类型。 -表示场景类型的枚举实现 `MultiTypesException.ExceptionType`,其中的工厂方法用于创建对应类型的异常。 +表示场景类型的枚举实现 `IMultiTypesException.IExceptionType`,其中的工厂方法用于创建对应类型的异常。 ```java public final class LoginException extends RuntimeException - implements MultiTypesException { + implements IMultiTypesException { private final Type type; private LoginException(@Nonnull Type type, @Nonnull String message) { super(message); @@ -103,7 +103,7 @@ public final class LoginException // ... - public enum Type implements ExceptionType { + public enum Type implements IExceptionType { DEFAULT("00", "当前会话未登录"), NOT_TOKEN("10", "未提供token"), INVALID_TOKEN("20", "token无效"), diff --git a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ExceptionFactory.java b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IExceptionFactory.java similarity index 96% rename from plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ExceptionFactory.java rename to plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IExceptionFactory.java index 0f2e8bf..655921f 100644 --- a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ExceptionFactory.java +++ b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IExceptionFactory.java @@ -22,7 +22,7 @@ import javax.annotation.Nonnull; * * @author ZhouXY */ -public interface ExceptionFactory { +public interface IExceptionFactory { /** * 创建异常 * diff --git a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/MultiTypesException.java b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IMultiTypesException.java similarity index 83% rename from plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/MultiTypesException.java rename to plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IMultiTypesException.java index ab30607..7050aeb 100644 --- a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/MultiTypesException.java +++ b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/IMultiTypesException.java @@ -20,22 +20,22 @@ import javax.annotation.Nonnull; import xyz.zhouxy.plusone.commons.base.IWithCode; /** - * MultiTypesException + * IMultiTypesException * *

* 异常在不同场景下被抛出,可以用不同的枚举值,表示不同的场景类型。 * *

- * 异常实现 {@link MultiTypesException} 的 {@link #getType} 方法,返回对应的场景类型。 + * 异常实现 {@link IMultiTypesException} 的 {@link #getType} 方法,返回对应的场景类型。 * *

- * 表示场景类型的枚举实现 {@link ExceptionType},各个枚举值本身就是该场景的异常的工厂实例, + * 表示场景类型的枚举实现 {@link IExceptionType},各个枚举值本身就是该场景的异常的工厂实例, * 使用其中的工厂方法用于创建对应类型的异常。 * *

  * public final class LoginException
  *         extends RuntimeException
- *         implements MultiTypesException<LoginException, LoginException.Type> {
+ *         implements IMultiTypesException<LoginException, LoginException.Type> {
  *     private final Type type;
  *     private LoginException(@Nonnull Type type, @Nonnull String message) {
  *         super(message);
@@ -61,7 +61,7 @@ import xyz.zhouxy.plusone.commons.base.IWithCode;
  *
  *     // ...
  *
- *     public enum Type implements ExceptionType<LoginException> {
+ *     public enum Type implements IExceptionType<LoginException> {
  *         DEFAULT("00", "当前会话未登录"),
  *         NOT_TOKEN("10", "未提供token"),
  *         INVALID_TOKEN("20", "token无效"),
@@ -118,17 +118,19 @@ import xyz.zhouxy.plusone.commons.base.IWithCode;
  * throw LoginException.Type.TOKEN_TIMEOUT.create();
  * 
* + * @param 具体异常类 + * @param 异常场景 * @author ZhouXY * @since 1.0.0 */ -public interface MultiTypesException< +public interface IMultiTypesException< X extends Exception, - T extends MultiTypesException.ExceptionType> { + T extends IMultiTypesException.IExceptionType> { /** * 异常类型 * - * @return 异常类型。通常是实现了 {@link ExceptionType} 的枚举。 + * @return 异常类型。通常是实现了 {@link IExceptionType} 的枚举。 */ @Nonnull T getType(); @@ -145,8 +147,8 @@ public interface MultiTypesException< /** * 异常类型 */ - public static interface ExceptionType - extends IWithCode, ExceptionFactory { + public static interface IExceptionType + extends IWithCode, IExceptionFactory { /** * 默认异常信息 diff --git a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ParsingFailureException.java b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ParsingFailureException.java index f716cb0..a60d3d8 100644 --- a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ParsingFailureException.java +++ b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/ParsingFailureException.java @@ -21,7 +21,7 @@ import java.time.format.DateTimeParseException; import javax.annotation.Nonnull; import xyz.zhouxy.plusone.commons.exception.business.RequestParamsException; -import xyz.zhouxy.plusone.commons.exception.MultiTypesException.ExceptionType; +import xyz.zhouxy.plusone.commons.exception.IMultiTypesException.IExceptionType; /** * 解析失败异常 @@ -39,7 +39,7 @@ import xyz.zhouxy.plusone.commons.exception.MultiTypesException.ExceptionType; */ public final class ParsingFailureException extends RuntimeException - implements MultiTypesException { + implements IMultiTypesException { private final Type type; @@ -170,7 +170,7 @@ public final class ParsingFailureException /** XML 解析失败 */ public static final Type XML_PARSING_FAILURE = Type.XML_PARSING_FAILURE; - public enum Type implements ExceptionType { + public enum Type implements IExceptionType { DEFAULT("00", "解析失败"), NUMBER_PARSING_FAILURE("10", "数字转换失败"), DATE_TIME_PARSING_FAILURE("20", "时间解析失败"), diff --git a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/business/InvalidInputException.java b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/business/InvalidInputException.java index a5b095b..1810b07 100644 --- a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/business/InvalidInputException.java +++ b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/business/InvalidInputException.java @@ -18,8 +18,8 @@ package xyz.zhouxy.plusone.commons.exception.business; import javax.annotation.Nonnull; -import xyz.zhouxy.plusone.commons.exception.MultiTypesException.ExceptionType; -import xyz.zhouxy.plusone.commons.exception.MultiTypesException; +import xyz.zhouxy.plusone.commons.exception.IMultiTypesException.IExceptionType; +import xyz.zhouxy.plusone.commons.exception.IMultiTypesException; /** * InvalidInputException @@ -35,7 +35,7 @@ import xyz.zhouxy.plusone.commons.exception.MultiTypesException; */ public final class InvalidInputException extends RequestParamsException - implements MultiTypesException { + implements IMultiTypesException { private final Type type; @@ -108,7 +108,7 @@ public final class InvalidInputException return this.type; } - public enum Type implements ExceptionType { + public enum Type implements IExceptionType { DEFAULT("00", "用户输入内容非法"), CONTAINS_ILLEGAL_AND_MALICIOUS_LINKS("01", "包含非法恶意跳转链接"), CONTAINS_ILLEGAL_WORDS("02", "包含违禁敏感词"), diff --git a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/package-info.java b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/package-info.java index 4e56f50..0595977 100644 --- a/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/package-info.java +++ b/plusone-commons/src/main/java/xyz/zhouxy/plusone/commons/exception/package-info.java @@ -17,21 +17,21 @@ /** *

异常

* - *

1. {@link MultiTypesException} - 多类型异常

+ *

1. {@link IMultiTypesException} - 多类型异常

*

* 异常在不同场景下被抛出,可以用不同的枚举值,表示不同的场景类型。 * *

- * 异常实现 {@link MultiTypesException} 的 {@link MultiTypesException#getType} 方法,返回对应的场景类型。 + * 异常实现 {@link IMultiTypesException} 的 {@link IMultiTypesException#getType} 方法,返回对应的场景类型。 * *

- * 表示场景类型的枚举实现 {@link MultiTypesException.ExceptionType},各个枚举值本身就是该场景的异常的工厂实例, + * 表示场景类型的枚举实现 {@link IMultiTypesException.IExceptionType},各个枚举值本身就是该场景的异常的工厂实例, * 使用其中的工厂方法用于创建对应类型的异常。 * *

  * public final class LoginException
  *         extends RuntimeException
- *         implements MultiTypesException<LoginException, LoginException.Type> {
+ *         implements IMultiTypesException<LoginException, LoginException.Type> {
  *     private final Type type;
  *     private LoginException(@Nonnull Type type, @Nonnull String message) {
  *         super(message);
@@ -57,7 +57,7 @@
  *
  *     // ...
  *
- *     public enum Type implements ExceptionType<LoginException> {
+ *     public enum Type implements IExceptionType<LoginException> {
  *         DEFAULT("00", "当前会话未登录"),
  *         NOT_TOKEN("10", "未提供token"),
  *         INVALID_TOKEN("20", "token无效"),