Xexex's Java 與其他二三事

Java 者,Java 著

Immutable + Native SQL (3):測試、JSONB、與上線成績單

13 July 2026

實戰篇:測試收斂成一層 (service 直接對真 PostgreSQL 測)、AI Agent 時代與其寫 skill 約束不如讓架構硬到無法造假、jsonb_agg 一次 round trip 撈回整個 object graph,以及二十年 production 系統的成績單 —— iowait 23.6% 掉到 1.4%、JVM 記憶體 256MB 就夠跑。 ...更多


Immutable + Native SQL (2):把物件模型要回來

12 July 2026

實作篇:每一層有固定的 side-effect 預算 (TX 只准在 service)、entity 是 immutable record 也是 PM 看得懂的規格、invariant 收進 constructor 讓壞狀態無法存在、高內聚讓 AI Agent 只要掃一個檔案,以及 keystone —— entity 異動只發生在 DAO,DAO 同時是 repository 和 factory。 ...更多


Immutable + Native SQL (1):AI 時代還談 CRUD?

11 July 2026

我用 immutable entity + native SQL 寫 CRUD,不用 ORM,這樣寫快十年了。第一篇講為什麼:AI 時代還值得談 CRUD 寫法的理由 (少見的寫法是 AI 模型的新養料、boilerplate 成本已被 agent 吃掉),加上離開 JPA/Hibernate 的五條傷疤。 ...更多


轉生到異世界騎單車

10 July 2017

過去一年我轉生到單車界了,一去不回 ...更多


Kotlin 的 data class 會對你的程式產生什麼樣的化學反應

18 June 2017

細說導入 Kotlin 一兩月後的小心得,data class 在 DTO, Entity 的運用,乃至於影響 API 的設計。 ...更多


Migrate to Ubuntu 16.04

19 June 2016

Ubuntu 16.04 (xenial) 已經推出兩個月了,不過到了這週才有機會嘗試著從 14.04 升到 16.04。原因是卡在 Vagrant 遲遲不支援新的 ubuntu cloud image。現在 DevOps 的工作流程多半是先在本機端嘗試用 Vagrant 配置新的 OS,等全部驗證過後,才會開始在 cloud 上實行。某方面來說 ...更多


其他舊的文章請見文庫.