aeee, sou iniciante em Hibernate Annotation, então desculpem a minha dúvida…
é o seguinte…
Tenho duas classes referenciadas no hibernate. (Relacionamento 1…n.)
Porém a classe que tem o @ManyToOne necessita de uma constraint unique de um atributo String e do objeto que é referenciado… ou seja, uma unique composta…
Porém, quando coloco a propriedade “unique = true” na @Column e @JoinColumn, e mando o hibernate gerar o banco, a unique não fica composta… (fica um index de unique pra cada atributo… e não um unico index com os dois)…
Teria como fazer a unique composta em um único INDEX para eu não ter que alterar direto no banco, e conseguir fazer o Hibernate gerar o DB pra mim ?!?!
hummm, Ok… mas na documentação diz como criar UNIQUES simples… e não compostas(no mesmo INDEX), no caso dois atributos dentro do mesmo INDEX de UNIQUE.
no meu caso seria o seguinte:
tenho uma classe Cidade e uma classe Estado.
A classe Cidade tem dois atributos:
private Estado estado;
private String nome; // Nome da cidade
No atributo ‘estado’, uso a anotação @OneToMany e @JoinColumn
No atributo ‘nome’, uso a anotação @Column e coloco o unique = true.
O que eu queria fazer é um unico UNIQUE para os dois atributos.
Dá uma olhada no tópico ‘2.2.1.1. Defining the table’ da documentação do Hibernate Annotations.
(respondido só por ser um dos primeiros resultados do google)