У меня есть javax.persistence.AttributeConverter
, потому что мне нужно хранить UUID (v4) в PostgreSQL. Преобразование объекта базы данных в локальный объект работает хорошо, но я не могу преобразовать локальный объект обратно в столбец базы данных - UUID Postgresql тип .
@Converter
public final class ApiClientIdAttributeConverter implements AttributeConverter<ApiClientId, UUID> {
@Override
public UUID convertToDatabaseColumn(ApiClientId attribute) {
return ofNullable(attribute.getIdValue())
.map(entityUuid -> attribute.getIdValue())
.orElse(null);
}
@Override
public ApiClientId convertToEntityAttribute(UUID dbData) {
return new ApiClientId(dbData);
}
}
Исключение:
10: 32: 59.960 [http-nio-8080-exec-2] ОШИБКА
org.hibernate.engine.jdbc.spi.SqlExceptionHelper - ОШИБКА: столбец
«api_client_id» имеет тип uuid, но выражение имеет тип bytea