0

我正在使用Java 8Hibernate 5.2.9 我有一个包含变量 end 的对象

@Column(name = "end", nullable = false, columnDefinition = "TIMESTAMP")
private LocalDateTime end;

在数据库中,该字段定义为

`end`        TIMESTAMP    NOT NULL

所以当我尝试做

sessionFactory.getCurrentSession().save(object);

我明白了

Caused by: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: '\xAC\xED\x00\x05sr\x00\x0Djava.time.Ser\x95]\x84\xBA\x1B"H\xB2\x0C\x00\x00xpw\x0E\x05\x00\x00\x07\xE1\x08\x0F\x13\x1E\x13\x1C1h@' for column 'end' at row 1

不确定我到底在做什么错,因为我假设 java 8 和 hibernate 5.2.9 知道是什么LocalDateTime。我会很感激任何帮助,因为我被困住了。

4

1 回答 1

0

我认为问题在于您使用了两种不同的日期类型。

TIMESTAMP-: '1970-01-01 00:00:01' UTC

LocalDateTime-:2017-08-16T05:22:23.832`

使用一种Date甲酸盐

于 2017-08-15T23:58:25.543 回答