Java → JSON Schema 產生器

Java 程式碼 輸入

正在載入編輯器…

JSON Schema(輸出) 輸出

設定

選擇產生 Schema 時作為 root 的 class。

解析完全在瀏覽器內完成,你的程式碼不會離開此頁面。

貼上 Java classes,立即產生 JSON Schema。

支援 collections、巢狀物件、Maps 與常見 annotations。

如何將 Java class/record 轉為 JSON Schema(步驟指南)

這個線上轉換器(Java class → JSON Schema)可從真實模型(DTO、struct、class)產生 JSON Schema,方便驗證 payload、分享契約,並生成 mock JSON。

  1. 步驟 1:貼上 Java 程式碼

    • 將要文件化的模型貼到左側編輯器。
    • 把被引用的型別也放在同一段程式碼中,便於產生 definitions。
    • 點擊 範例 載入範例,了解預期輸入格式。
  2. 步驟 2:選擇 根 class(如需要)

    • 若偵測到多個 definitions,選擇與你的 API payload 相符的 root 型別。
    • 輸出 Schema 會以選中的 root 為中心,並包含引用型別的額外 definitions。
  3. 步驟 3:檢視 JSON Schema 輸出

    • 重點檢查型別、必填/可選欄位,以及巢狀物件/陣列結構。
    • 當模型引用其他模型時,注意 definitions 以及 $ref 是否正確。
    • 複製或下載 Schema,用於驗證、文件或 schema-first 開發。
  4. 步驟 4:驗證或產生 mock JSON

    • 點擊 產生 Mock 資料 即可開啟已預載 Schema 的 Mock 產生器。
    • 用真實 payload 驗證 Schema,及早發現破壞性變更。
    • 若你依賴更進階的 schema 組合(例如 anyOf/oneOf/allOf),建議用 Ajv 等完整 validator 再驗證一次。

Schema keywords 支援說明

產生的 Schema 可能包含 $ref ,也可依需求補上 anyOf, oneOf, allOf當 Schema 更複雜時,建議使用完整的 JSON Schema validator;若要產生 mock,必要時可先 dereference 再生成。

相關工具

搭配這些工具一起使用:驗證 Schema、產生 mock payload、格式化 JSON 範例,並保持程式碼與契約一致。

常見問題

支援哪些 Java 程式碼?

支援常見 POJO、Lombok data classes、records、builders 與 DTO(含巢狀物件、泛型、陣列、Lists/Sets、Maps)。可讀取 @JsonProperty/@SerializedName/@JsonInclude 等註解與 nullable hints,讓欄位命名與可選性更貼合你的序列化框架。

型別辨識準確嗎?

Integer/Double/Boolean 等包裝型別、Java time 型別、enums、Optionals 與泛型集合會映射到最接近的 JSON Schema 型別。若缺少泛型資訊(例如 raw List 未標註泛型),會提示並使用合理預設值,確保 Schema 可用。

如何從 Schema 產生 mock JSON?

產生 Schema 後,點擊「產生 Mock 資料」即可開啟已預載 Schema 的 Mock 產生器,在那裡設定 locale、陣列數量等,快速生成更真實的樣例 payload。

有多個 class 時如何選擇 root?

在設定面板下拉選擇解析到的 class。預設會選第一個 public class,你也可以隨時切換到巢狀 class 或後面宣告的 DTO,無需重新整理。

Java → JSON Schema 產生器 | JSONSwiss