Interface SQLAction<T>

    • Method Detail

      • getActionUUID

        @NotNull
        @NotNull java.util.UUID getActionUUID()
        得到该Action的UUID
        Returns:
        UUID
      • getShortID

        @NotNull
        @NotNull java.lang.String getShortID()
        得到短八位格式的UUID
        Returns:
        UUID(8)
      • getCreateTime

        default long getCreateTime()
        得到该Action的创建时间。
        注意,此处获得的时间非时间戳毫秒数,仅用于计算耗时。
        Returns:
        创建时间 (毫秒)
      • getCreateTime

        long getCreateTime​(java.util.concurrent.TimeUnit unit)
        得到该Action的创建时间
        注意,此处获得的时间非时间戳毫秒数,仅用于计算耗时。
        Parameters:
        unit - 时间单位
        Returns:
        创建时间
      • getSQLContent

        @NotNull
        @NotNull java.lang.String getSQLContent()
        得到该Action所要执行的源SQL语句
        Returns:
        源SQL语句
      • getSQLContents

        @NotNull
        default @NotNull java.util.List<java.lang.String> getSQLContents()
        得到该Action所要执行的源SQL语句列表。
        Returns:
        源SQL语句列表
      • execute

        @NotNull
        T execute()
           throws java.sql.SQLException
        执行该Action对应的SQL语句
        Returns:
        指定数据类型
        Throws:
        java.sql.SQLException - 当SQL操作出现问题时抛出
      • execute

        @Nullable
        default T execute​(@Nullable
                          @Nullable SQLExceptionHandler exceptionHandler)
        执行语句并返回值
        Parameters:
        exceptionHandler - 异常处理器 默认为 defaultExceptionHandler()
        Returns:
        指定类型数据
      • execute

        @Nullable
        default <R> R execute​(@NotNull
                              @NotNull SQLFunction<T,​R> function,
                              @Nullable
                              @Nullable SQLExceptionHandler exceptionHandler)
        执行语句并处理返回值
        Type Parameters:
        R - 需要返回的内容
        Parameters:
        function - 处理方法
        exceptionHandler - 异常处理器 默认为 defaultExceptionHandler()
        Returns:
        指定类型数据
      • execute

        @Nullable
        @Contract("_,!null,_ -> !null")
        default <R> R execute​(@NotNull
                              @NotNull SQLFunction<T,​R> function,
                              @Nullable
                              R defaultResult,
                              @Nullable
                              @Nullable SQLExceptionHandler exceptionHandler)
        执行语句并处理返回值
        Type Parameters:
        R - 需要返回的内容
        Parameters:
        function - 处理方法
        defaultResult - 默认结果,若处理后的结果为null,则返回该值
        exceptionHandler - 异常处理器 默认为 defaultExceptionHandler()
        Returns:
        指定类型数据
      • executeFunction

        @Nullable
        default <R> R executeFunction​(@NotNull
                                      @NotNull SQLFunction<@NotNull T,​R> function)
                               throws java.sql.SQLException
        执行语句并处理返回值
        Type Parameters:
        R - 需要返回的内容
        Parameters:
        function - 处理方法
        Returns:
        指定类型数据
        Throws:
        java.sql.SQLException - 当SQL操作出现问题时抛出
      • executeFunction

        @Nullable
        @Contract("_,!null -> !null")
        default <R> R executeFunction​(@NotNull
                                      @NotNull SQLFunction<@NotNull T,​R> function,
                                      @Nullable
                                      R defaultResult)
                               throws java.sql.SQLException
        执行语句并处理返回值
        Type Parameters:
        R - 需要返回的内容
        Parameters:
        function - 处理方法
        defaultResult - 默认结果,若处理后的结果为null,则返回该值
        Returns:
        指定类型数据
        Throws:
        java.sql.SQLException - 当SQL操作出现问题时抛出
      • executeAsync

        default void executeAsync()
        异步执行SQL语句,采用默认异常处理,无需返回值。
      • executeAsync

        default void executeAsync​(@Nullable
                                  @Nullable SQLHandler<T> success)
        异步执行SQL语句
        Parameters:
        success - 成功时的操作
      • executeFuture

        @NotNull
        default @NotNull java.util.concurrent.CompletableFuture<java.lang.Void> executeFuture()
        以异步Future方式执行SQL语句。
        Returns:
        异步执行的Future实例,可通过 Future.get() 阻塞并等待结果。
      • executeFuture

        @NotNull
        <R> @NotNull java.util.concurrent.CompletableFuture<R> executeFuture​(@NotNull
                                                                             @NotNull SQLFunction<T,​R> handler)
        以异步Future方式执行SQL语句。
        Returns:
        异步执行的Future实例,可通过 Future.get() 阻塞并等待结果。
      • handleException

        default void handleException​(@Nullable
                                     @Nullable SQLExceptionHandler handler,
                                     java.sql.SQLException exception)
      • setExceptionHandler

        default void setExceptionHandler​(@Nullable
                                         @Nullable SQLExceptionHandler handler)
        设定通用的异常处理器。
        在使用 execute(SQLExceptionHandler) 等相关方法时,若传入的处理器为null,则会采用此处理器。
        若该方法传入参数为 null,则会使用 defaultExceptionHandler()
        Parameters:
        handler - 异常处理器