Class ApplicationException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
io.leandev.appfuse.exception.ApplicationException
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
ConflictException, ConstraintException, DuplicateException, InvalidDataException, LockoutException, NotFoundException, VerificationException

public class ApplicationException extends RuntimeException

應用程式異常基類

提供統一的訊息格式化機制,支援延遲格式化和多種格式。

格式化支援

  • 位置參數格式:${0}, ${1}, ${2}...
  • 傳統格式:%s, %d, %f...

延遲格式化: 訊息在建構時不格式化,只在 getMessage() 或 toString() 時才格式化, 確保 format 和 params 的原始資料完整傳遞給錯誤處理層。

See Also:
  • Constructor Details

    • ApplicationException

      public ApplicationException()
      建立預設異常,使用預設訊息
    • ApplicationException

      public ApplicationException(String message, Throwable cause, Object... params)
      建立異常(含原因和參數)
      Parameters:
      message - 訊息格式模板
      cause - 原始異常
      params - 格式化參數
    • ApplicationException

      public ApplicationException(Throwable cause)
      建立異常(僅原因)
      Parameters:
      cause - 原始異常
    • ApplicationException

      public ApplicationException(String message, Object... params)
      建立異常(含訊息和參數)
      Parameters:
      message - 訊息格式模板
      params - 格式化參數
  • Method Details

    • getMessage

      public String getMessage()
      覆寫 getMessage(),返回格式化後的訊息
      Overrides:
      getMessage in class Throwable
      Returns:
      格式化後的錯誤訊息
    • toString

      public String toString()
      覆寫 toString(),提供完整的異常描述
      Overrides:
      toString in class Throwable
      Returns:
      異常描述字串