Я пытаюсь отформатировать дату и время, используя @Convert(converter = MyConverter.class)
. Это работает должным образом при сохранении, и данные правильно сохраняются в БД.
Проблема, с которой я столкнулся, - это объект, который возвращается, в то время как responseEntity = myrepository.save(myEntity)
не имеет форматированной даты. Поле в responseEntity по-прежнему возвращает старый формат. Я что-нибудь упустил?
Мой класс конвертера:
public class DateTimeConverter implements
AttributeConverter<LocalDateTime, String> {
@Override
public String convertToDatabaseColumn(LocalDateTime attribute) {
if(Objects.isNull(attribute)) {
return null;
}
attribute = attribute.atZone(ZoneId.systemDefault()).withZoneSameInstant(ZoneOffset.UTC).toLocalDateTime();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
return attribute.format(formatter);
}
@Override
public LocalDateTime convertToEntityAttribute(String dbData) {
if(Objects.isNull(dbData)) {
return null;
}
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
return LocalDateTime.parse(dbData, formatter);
}
}