Olá amigos,
Tenho uma classe Prioridade que entre outras coisas tem o atributo ordem que deve ser único. Então quando quero adicionar uma nova prioridade no meio das que já estão salvas, abro o espaço fazendo os updates para depois inserir.@Column(name="ORDEM",nullable=true,unique=true)
private Integer ordem = null;
public void inserirNova(Session session) {
for (Prioridade p : (List<Prioridade>)session.createCriteria(Prioridade.class).list())
if (p.getOrdem() >= ordem){
p.setOrdem(p.getOrdem()+1);
session.update(p);
}
session.save(this);
}