could not read column value from result set: birthday
映射文件、字段定義均無誤,但讀取 birthday 字段報錯。
birthday 定義為 DATE 類型。birthday 默認值為 '0000-00-00'(MySQL 允許的「零日期」)。'0000-00-00' 映射為 Java java.sql.Date / LocalDate 時拋出異常,因這不是合法公曆日期。UPDATE t SET birthday = '1970-01-01' WHERE birthday = '0000-00-00';
zeroDateTimeBehavior=convertToNull(轉為 NULL)或 round,但業務語義可能改變。birthday DATE NOT NULL DEFAULT '1970-01-01' 或允許 NULL。MySQL 5.7+ 默認 sql_mode 含 NO_ZERO_DATE,禁止寫入 '0000-00-00',新建表不會出現此問題;舊庫升級需清理歷史數據。