2016-11-19 4 views
3

Я использую Hibernate 5.0 + Postgres 9,4JTS - Hibernate + Postgres + UUID конфликт

Мои объекты используют UUID сек в Indentifier.

Проект также использует hibernate-spatial.

Свойство id помечается просто как

@Id 
@GeneratedValue 
private UUID id; 

После сохраняющиеся любой объект (не только те, с геометрическими данными), я получаю следующее сообщение об ошибке:

column "id" is of type geometry but expression is of type uuid 

Похоже, есть некоторые конфликт в сопоставлении типов ко мне; хотя я не специалист по отображению типов гибернаций.

Есть ли кто-нибудь, кто может помочь мне преодолеть эту проблему?

+0

Каков тип столбца 'ID 'в базе данных? – SubOptimal

+0

@SubOptimal Он создается как 'geometry', потому что' 'UUID' и' Geometry' сопоставлены с 'java.sql.Types.OTHER' –

+0

Вы имеете в виду, что у вас' CREATE TABLE some_table (id geometry, ...) ' и теперь хотите сопоставить «UUID»? – SubOptimal

ответ

2

Заканчивать this answer и оригинальный discussion thread

Задание columnDefinition = "uuid" решается точно такой же вопрос для меня.

@Entity 
public class MyEntity { 
    @Id 
    @GeneratedValue 
    @Column(columnDefinition = "uuid", updatable = false) 
    public UUID getId() { 
     return id; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^