+ * 一个特殊的 {@link java.util.function.UnaryOperator}。 + * 表示对 {@code boolean} 值的一元操作。 + *
+ * + * @author ZhouXY + * @since 1.0.0 + * @see java.util.function.UnaryOperator + */ @Beta @FunctionalInterface public interface BoolUnaryOperator { + + /** + * 将此函数应用于给定的 {@code boolean} 参数,返回一个 {@code boolean} 结果。 + * + * @param operand 操作数 + * @return 结果 + */ boolean applyAsBool(boolean operand); + /** + * 返回一个 {@code BoolUnaryOperator},该操作符将给定的操作数取反。 + * + * @return {@code BoolUnaryOperator} + */ static BoolUnaryOperator not() { return b -> !b; } diff --git a/src/main/java/xyz/zhouxy/plusone/commons/function/CharUnaryOperator.java b/src/main/java/xyz/zhouxy/plusone/commons/function/CharUnaryOperator.java index e9ca630..4368c68 100644 --- a/src/main/java/xyz/zhouxy/plusone/commons/function/CharUnaryOperator.java +++ b/src/main/java/xyz/zhouxy/plusone/commons/function/CharUnaryOperator.java @@ -18,8 +18,27 @@ package xyz.zhouxy.plusone.commons.function; import com.google.common.annotations.Beta; +/** + * CharUnaryOperator + * + *+ * 一个特殊的 {@link java.util.function.UnaryOperator}。 + * 表示对 {@code char} 的一元操作。 + *
+ * + * @author ZhouXY + * @since 1.0.0 + * @see java.util.function.UnaryOperator + */ @Beta @FunctionalInterface public interface CharUnaryOperator { + + /** + * 将此函数应用于给定的 {@code char} 参数,返回一个 {@code char} 结果。 + * + * @param operand 操作数 + * @return 结果 + */ char applyAsChar(char operand); } diff --git a/src/main/java/xyz/zhouxy/plusone/commons/function/Executable.java b/src/main/java/xyz/zhouxy/plusone/commons/function/Executable.java index a8677ec..99746ef 100644 --- a/src/main/java/xyz/zhouxy/plusone/commons/function/Executable.java +++ b/src/main/java/xyz/zhouxy/plusone/commons/function/Executable.java @@ -16,9 +16,26 @@ package xyz.zhouxy.plusone.commons.function; +/** + * Executable + * + *+ * 表示一个无入参无返回值的操作,可抛出异常。 + *
+ * + * @param* 返回 {@code Optional<T>} 对象。 + *
* * @author ZhouXY * @since 1.0.0 diff --git a/src/main/java/xyz/zhouxy/plusone/commons/function/ThrowingConsumer.java b/src/main/java/xyz/zhouxy/plusone/commons/function/ThrowingConsumer.java index 51d3984..a05f6c7 100644 --- a/src/main/java/xyz/zhouxy/plusone/commons/function/ThrowingConsumer.java +++ b/src/main/java/xyz/zhouxy/plusone/commons/function/ThrowingConsumer.java @@ -16,13 +16,24 @@ package xyz.zhouxy.plusone.commons.function; +/** + * ThrowingConsumer + * + *+ * 允许抛出异常的消费操作。是一个特殊的 {@link java.util.function.Consumer}。 + *
+ * + * @author ZhouXY + * @since 1.0.0 + * @see java.util.function.Consumer + */ @FunctionalInterface public interface ThrowingConsumer+ * 接收一个参数,并返回一个结果,可以抛出异常。 + *
+ * + * @param+ * 接收一个参数,返回一个布尔值,可抛出异常。 + *
+ * + * @author ZhouXY + * @since 1.0.0 + * @see java.util.function.Predicate + */ @FunctionalInterface public interface ThrowingPredicate+ * 允许抛出异常的 Supplier 接口。 + *
+ * + * @paramNOTE: 可覆写此方法
+ * + * @return 默认每页大小 + */ @Virtual protected int defaultSizeInternal() { return DEFAULT_PAGE_SIZE; @@ -124,6 +151,9 @@ public class PagingAndSortingQueryParams { return new SortableProperty(propertyName, columnName, orderType); } + /** + * 可排序属性 + */ public static final class SortableProperty { private final String propertyName; private final String columnName; @@ -140,18 +170,38 @@ public class PagingAndSortingQueryParams { this.sqlSnippet = this.propertyName + " " + this.orderType; } + /** + * 属性名 + * + * @return 属性名 + */ public String getPropertyName() { return propertyName; } + /** + * 对应数据库中列名称 + * + * @return 列名称 + */ public String getColumnName() { return columnName; } + /** + * 排序方式 + * + * @return 排序方式 + */ public String getOrderType() { return orderType; } + /** + * SQL 片段 + * + * @return SQL 片段 + */ public String getSqlSnippet() { return sqlSnippet; } diff --git a/src/main/java/xyz/zhouxy/plusone/commons/model/dto/PagingParams.java b/src/main/java/xyz/zhouxy/plusone/commons/model/dto/PagingParams.java index 180b354..62b82d4 100644 --- a/src/main/java/xyz/zhouxy/plusone/commons/model/dto/PagingParams.java +++ b/src/main/java/xyz/zhouxy/plusone/commons/model/dto/PagingParams.java @@ -23,9 +23,13 @@ import xyz.zhouxy.plusone.commons.model.dto.PagingAndSortingQueryParams.Sortable public class PagingParams { + /** 每页大小 */ private final int size; + /** 当前页码 */ private final long pageNum; + /** 偏移量 */ private final long offset; + /** 排序 */ private final List