У меня есть такая сущность, отображаемая Hibernate:
@Entity
public class MyTable {
// ...
private String myMessage;
// Getters...
}
Я должен поддерживать как Oracle, так и DB2, но этот конкретный столбец имеет разные типы в схемах для двух баз данных: в схеме Oracle этоэто VARCHAR2(2000)
, а в DB2 это CLOB
.
Теперь, если я оставлю это как есть, он будет работать для Oracle и будет работать с DB2, если я аннотирую myMessage
с @Lob
, он работает наDB2 не работает на Oracle.
Поскольку я не могу изменить схему, как лучше всего справиться с этой ситуацией?Я думал о чем-то похожем на пользовательский тип Hibernate, но я не уверен.
Обратите внимание, что объект доступен только для чтения, в данный момент я не заинтересован в сохранении данных.