Persistencia de Enumerations com Hibernate

Como eu faço a persistencia de uma Enumeration?

Está algo assim

public enum Estados{
SP{},
RJ{};
//...
}

Se a enum não vai mudar, não faz tanto sentido assim persistí-la

mas vc pode fazer o seguinte:

@Entity
public class SeiLa {
   ...
   @Enumerated
   private Estados estado;
}

inclusive vc pode guardar no banco a string do enum (e.g “SP”) ou o valor dela no enum…

A enum não vai muda mais várias classes vão ser persistidas e terão essa enum

Eu pensei nisso mas meu enum é algo mais parecido com isso

public enum Estados{
SP{
@Override
protected List<Cidade> getCidades(){
return dao.getList(Cidade.class, Object[]{"uf","SP"});
}
},
RJ{
@Override
protected List<Cidade> getCidades(){
return dao.getList(Cidade.class, Object[]{"uf","RJ"});
}
};
protected abstract List<Cidade> getCidades();
}

Vou ver se consigo com @Enumerated, obrigado.