[英]JPA: how do I persist a String into a database field, type MYSQL Text
[英]How do I persist a MySQL timestamp field as a long (epoch) field in java using JPA?
我在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();
}
}
简单地使用@Temporal(TemporalType.TIMESTAMP)
以上createdAt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.