【发布时间】:2018-09-08 12:26:51
【问题描述】:
当前实现:
@Getter(AccessLevel.NONE)
@Setter(AccessLevel.NONE)
@Column(name = "send_time", columnDefinition = "timestamp without time zone not null")
private LocalTime sendTime;
@Convert(converter=LocalTimeConverter.class)
public LocalTime getSendTime() {
return sendTime;
}
@Convert(converter=LocalTimeConverter.class)
public void setLocalTime(LocalTime time) {
this.sendTime = time;
}
@Converter(autoApply = true)
public class LocalTimeConverter implements AttributeConverter<LocalDateTime, Timestamp>{
@Override
public Timestamp convertToDatabaseColumn(LocalDateTime zonedDateTime) {
if(zonedDateTime == null) {
return null;
}
return Timestamp.valueOf(zonedDateTime);
}
@Override
public LocalDateTime convertToEntityAttribute(Timestamp sqlTime) {
if(sqlTime == null) {
return null;
}
return sqlTime.toLocalDateTime();
}
}
object.setSendTime(LocalTime.of(11, 00, 00));
我一直得到的错误:
ERROR: column "send_time" is of type time without time zone but expression is of type bytea
Hint: You will need to rewrite or cast the expression.
【问题讨论】:
-
是您的访问类型字段还是属性?
标签: java postgresql hibernate spring-boot jpa