gpt4 book ai didi

java - 如何使用 JPA 将 MySQL 时间戳字段持久保存为 java 中的长(纪元)字段?

转载 作者:行者123 更新时间:2023-11-29 10:46:50 25 4
gpt4 key购买 nike

我的 MySQL 表中有一个列,例如:

createdAt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP`.

我希望它存储在如下字段中:

private Long createdAt;

我该怎么做?

最佳答案

最好使用 TemporalType 枚举中支持的类型。多头需要转换器。

这是一个多头转换器:

import java.sql.Timestamp;

import javax.persistence.AttributeConverter;
import javax.persistence.Converter;

@Converter(autoApply = true)
public class LongConverter implements AttributeConverter<Long, Timestamp> {

@Override
public Timestamp convertToDatabaseColumn(Long attribute) {
if (attribute == null)
return null;
return new Timestamp(attribute);
}

@Override
public Long convertToEntityAttribute(Timestamp dbData) {
if (dbData == null)
return null;
return dbData.getTime();

}

}

关于java - 如何使用 JPA 将 MySQL 时间戳字段持久保存为 java 中的长(纪元)字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44415146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com