1
我使用Spring,Hibernate和MySQL的堅持一些記錄到一個隊列,我稍後處理。
由於我使用Java 8,建議使用JodaTime庫而不是Java SQL Date c.f. here
型號
@Entity
@Table(name = "order_job_queue")
public class CancelReward implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
@Column(name = "id")
private int id;
@Column(name = "processed_state")
private String processedState;
@Column(name = "order_reference_id")
private int orderReferenceId;
@Column(name = "creation_date", columnDefinition = "DATETIME DEFAULT")
private DateTime creationDate;
@Column(name = "last_checked_date", columnDefinition = "DATETIME DEFAULT")
private DateTime lastCheckedDate; ...
@PrePersist
protected void onCreate() {
creationDate = new DateTime().toDateTime();
}
@PreUpdate
protected void onUpdate() {
lastCheckedDate = new DateTime().toDateTime();
}
表
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`processed_state` VARCHAR(45) NOT NULL,
`order_reference_id` INT UNSIGNED NOT NULL,
`creation_date` DATETIME NOT NULL,
`last_checked_date` DATETIME NOT NULL,
依賴版本
- Spring框架 - 4.3。 3
- 休眠 - 4.3.5
- 休眠JPA2 API - 1
- MySQL連接 - 5.1.40
當我試圖挽救實體我得到這個堆棧跟蹤抱怨截斷。
數據截斷:不正確的日期時間值:「在行」列「CREATION_DATE」 1個 出錯處理請求:無法執行語句; SQL [n/a];嵌套的例外是org.hibernate.exception.DataException:使用Java SQL日期無法執行的語句
我嘗試爲好,不知道如何解決這個問題one.a
謝謝,這工作。這是令人失望的JodaTime不工作考慮它實現Date.util接口:( – kaleeway