CodeGym
促銷
學習
課程
任務
問卷 & 測驗
遊戲
說明
行程
社群
用戶
論壇
聊天
文章
成功故事
動態
評價
訂閱
淺色主題

課程

  • 評論
  • 關於我們
開始
開始學習
立即開始學習
  • My Progress
  • Courses
  • 任務地圖
  • 課程
  • 序列化的壓縮與效能剖析

    JAVA 25 SELF
    等級 45,課程 4
    如何在 Java 中減小大小並加速物件序列化:用 transient 排除多餘欄位,透過 Externalizable 取得完全控制,使用串流壓縮( GZIPOutputStream、 ZipOutputStream),以緩衝( BufferedOutputStream、 BufferedInputStream)加速 I/O,並透過 FileChannel. transferTo 進行快速複製。為了評估效能,我們同時使用 System. nanoTime() 的快速量測與基於 JMH 的可靠微基準。最後以一個小型實驗和常見錯誤解析作結。
    可用
  • JSON 基礎:結構、語法、優點

    JAVA 25 SELF
    等級 46,課程 0
    精要且現代的 JSON 資料交換格式導論:它是什麼、為何成為事實上的 REST API 標準;基本結構—物件 { } 與陣列 [ ];允許的型別(字串 "..."、數字、布林值 true/ false、 null)、巢狀、與 XML 的比較、JSON ↔ Java 的對應(集合 Map<K, V>、 HashMap<K, V>)。解析實用範例與常見錯誤:單引號、多餘逗號、 undefined、具有前導零的數字。
    可用
  • Jackson — 讀取與寫入 JSON、註解

    JAVA 25 SELF
    等級 46,課程 1
    Jackson — 是在 Java 中處理 JSON 的事實上標準:從透過 ObjectMapper 進行簡單的序列化與反序列化,到使用註解 @JsonProperty、 @JsonIgnore、 @JsonInclude、 @JsonFormat 做細緻設定。這堂課將說明如何引入( jackson-databind)、讀寫物件與集合、pretty-printing、處理日期,以及常見錯誤,包括搭配 TypeReference 的泛型與對 POJO 的要求(無參數建構子、getter/setter)。
    可用
  • Gson — 序列化與反序列化、設定

    JAVA 25 SELF
    等級 46,課程 2
    在本講次中我們將講解 Google 的 Gson 函式庫:從 toJson/ fromJson 的快速上手、透過 TypeToken<> 反序列化集合、以及使用 GsonBuilder 進行彈性設定( setPrettyPrinting、 serializeNulls、 setDateFormat)。我們會說明 @SerializedName、 @Expose 註解,版本控制的 @Since/ @Until,自訂配接器 TypeAdapter 與 registerTypeAdapter,最後與 Jackson 做比較並梳理常見錯誤。
    可用
  • 使用動態結構:Map、List、JsonNode

    JAVA 25 SELF
    等級 46,課程 3
    當 JSON 的結構事先未知或經常變動時,與其使用嚴格的 Java 類別,不如使用通用的容器: Map、 List 與 JSON 樹。這堂課說明如何用 ObjectMapper 將資料讀入 Map<String, Object> 與 List,如何透過 JsonNode 及其方法 get/ path/ asText() 安全地遍歷樹;也會介紹以 Gson 為替代方案,使用 JsonElement、 JsonObject、 JsonArray。最後以抽取組態的實作收尾,並解析常見錯誤。
    可用
  • JSON 驗證:JSON Schema,驗證錯誤

    JAVA 25 SELF
    等級 46,課程 4
    為何以及如何在反序列化前檢查以 JSON 格式傳入的資料:透過 JSON Schema 制定資料契約(鍵 type、 properties、 required、 format),在 Java 中使用 everit-org/json-schema 進行驗證(將架構載入為 Schema,呼叫 validate),妥善處理 ValidationException,並為使用者與 API 產生清楚易懂的錯誤訊息。
    可用
  • XML 與命名空間基礎

    JAVA 25 SELF
    等級 47,課程 0
    對 XML 的簡短而實用的導論:基礎結構(元素、屬性、文字節點、註解、 CDATA)、prolog 的組成;更重要的是——為什麼需要命名空間以及如何透過屬性 xmlns 與 xmlns:prefix 來宣告與套用它們。將說明前綴、預設命名空間( xmlns= "URI")、在同一文件中混用不同「詞彙」以及常見的解析錯誤。
    可用
  • 使用 DOM 與 SAX:解析 XML

    JAVA 25 SELF
    等級 47,課程 1
    本講次將說明兩種經典的 XML 解析方式:樹狀的 DOM 與事件導向的 SAX。你將學會透過樹結構( Document、 Element、 NodeList)讀取與修改文件,並以事件處理器( SAXParser、 DefaultHandler、 startElement/ characters/ endElement)串流處理大型檔案。我們會展示各種方法的優缺點、實作範例,並拆解常見錯誤(記憶體、在 characters 中的文字分割、在 SAX 中嘗試修改 XML)。
    可用
  • StAX (Streaming API for XML) — 流式解析

    JAVA 25 SELF
    等級 47,課程 2
    用 StAX 拆解 XML 的流式解析:pull 模型與 SAX 的 push 方式有何不同,如何透過 XMLInputFactory 建立解析器,並以迴圈呼叫 reader. next() 從 XMLStreamReader 讀取事件;有哪些事件型別( START_ELEMENT、 CHARACTERS、 END_ELEMENT、 END_DOCUMENT),以及何時 StAX 比 DOM/ SAX 更合適。另外包含:各方法比較表、Mermaid 圖表,以及常見錯誤解析(資源/串流洩漏、元素巢狀、 XMLStreamException、 IOException 等)。
    可用
  • 透過 JAXB 操作 XML:基礎與註解

    JAVA 25 SELF
    等級 47,課程 3
    如何使用 JAXB(Jakarta XML Binding)在 Java 物件與 XML 之間互相轉換:關鍵註解 @XmlRootElement、 @XmlElement、 @XmlAttribute、 @XmlType、 @XmlTransient;基礎類別 JAXBContext、 Marshaller、 Unmarshaller;透過屬性 Marshaller.JAXB_FORMATTED_OUTPUT 設定格式化輸出。涵蓋 Java 11+ 的 Maven 相依( jakarta.xml.bind-api、 jaxb-runtime)、處理集合與巢狀物件、控制元素順序( propOrder)、排除欄位與常見錯誤。
    可用
  • 設定 XML 序列化:自訂配接器

    JAVA 25 SELF
    等級 47,課程 4
    如何讓 JAXB 序列化「非標準」型別並以所需格式呈現資料:使用註解 @XmlJavaTypeAdapter,並基於 XmlAdapter<ValueType, BoundType> 撰寫自訂配接器。會講解日期格式化( LocalDate → "dd.MM.yyyy")、數字( BigDecimal)、處理集合,透過 @XmlAttribute 將值放入屬性、透過 @XmlElement 輸出為元素,以及用 @XmlTransient 排除欄位。還會練習透過 Marshaller/ Unmarshaller 進行序列化/反序列化,並解析常見錯誤。
    可用
  • Lambda 運算式:語法與作用域

    JAVA 25 SELF
    等級 48,課程 0
    重溫並深化 Java 中的 lambda 運算式:語法(參數、箭頭 ->、主體)、可省略括號與 return 的簡寫、與函式式介面的關聯( Comparator、 Runnable、 Consumer),以及在清單、串流與 Stream API 中的日常範例。解析作用域與「有效 final」規則、lambda 與匿名類別中 this 的差異,以及常見錯誤與避免方式。
    可用
  • 1
  • ...
  • 20
  • 21
  • 22
  • 23
  • 24
  • ...
  • 30
學習
  • 註冊
  • Java 課程
  • 題目協助
  • 價格
  • Java 語法
社群
  • 用戶
  • 文章
  • 論壇
  • 聊天
  • 成功故事
  • 動態
  • 聯盟計畫
公司
  • 關於我們
  • 聯絡方式
  • 評價
  • 新聞中心
  • CodeGym for EDU
  • 常見問題
  • 支援
CodeGymCodeGym 是一門從零開始學習 Java 程式設計的線上課程。這門課程是初學者精通 Java 的完美方式。它包含超過 1200 題、具即時檢驗功能,以及涵蓋 Java 基礎理論的必要範圍。為了幫助你在學習上成功,我們實作了一系列激勵功能:測驗、程式專案、關於有效學習的內容,以及 Java 開發者職涯相關內容。
追蹤我們
介面語言
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia
繁體中文
Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym
MastercardVisa
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym