遇到的日期转化类的错误:
"msg": "\r\n### Error updating database. Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect date value: '\\xAC\\xED\\x00\\x05sr\\x00\\x0Djava.time.Ser\\x95]\\x84\\xBA\\x1B\"H\\xB2\\x0C\\x00\\x00xpw\\x07\\x03\\x00\\x00\\x07\\xCD\\x03\\x03x' for column `vaccine_local`.`patient_bound`.`birthday` at row 1\r\n### The error may exist in com/vaccine/vaccines/mapper/PatientBoundMapper.java (best guess)\r\n### The error may involve com.vaccine.vaccines.mapper.PatientBoundMapper.insert-Inline\r\n### The error occurred while setting parameters\r\n### SQL: INSERT INTO patient_bound ( id, name, card_type, id_card, sex, birthday, phone, user_id, gmt_created, is_deleted ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )\r\n### Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect date value: '\\xAC\\xED\\x00\\x05sr\\x00\\x0Djava.time.Ser\\x95]\\x84\\xBA\\x1B\"H\\xB2\\x0C\\x00\\x00xpw\\x07\\x03\\x00\\x00\\x07\\xCD\\x03\\x03x' for column `vaccine_local`.`patient_bound`.`birthday` at row 1\n; Data truncation: Incorrect date value: '\\xAC\\xED\\x00\\x05sr\\x00\\x0Djava.time.Ser\\x95]\\x84\\xBA\\x1B\"H\\xB2\\x0C\\x00\\x00xpw\\x07\\x03\\x00\\x00\\x07\\xCD\\x03\\x03x' for column `vaccine_local`.`patient_bound`.`birthday` at row 1; nested exception is com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect date value: '\\xAC\\xED\\x00\\x05sr\\x00\\x0Djava.time.Ser\\x95]\\x84\\xBA\\x1B\"H\\xB2\\x0C\\x00\\x00xpw\\x07\\x03\\x00\\x00\\x07\\xCD\\x03\\x03x' for column `vaccine_local`.`patient_bound`.`birthday` at row 1",
"code": 500
原因:遇到这种情况通常是书库的类型不支持LocalDate,
可以先转换为Date 类型,再到数据库存储;
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
LocalDate birthday = LocalDate.parse(birthdayString, formatter);
// 转换为 java.sql.Date
java.sql.Date sqlDate = java.sql.Date.valueOf(birthday);
patientBound.setBirthday(sqlDate);