Oi pessoal,
Eu estou começando a modelar meu Projeto Final da faculdade, e tenho algumas dúvidas sobre a utilização de Id’s.
A primeira delas, é porque todas as tabelas de banco geralmente tem um Id, mesmo que a própria entidade possua um atributo que serviria muito bem como chave primária. Por exemplo uma tabela unidade_de_medida com um atributo “codigo” (que serviria muito bem como uma primary key) tem também um id_unidade_de_medida. Faço essa pergunta, pois dois três projetos que eu trabalhei, dois usavam esse padrão de criar um id para tudo. Isso tem algo a ver com a criação de índices, está ligado ao uso de frameworks ORM ou coisa assim?
A segunda dúvida é se esses Id’s devem aparecer nas classes de domínio, alguns já me disseram que o uso dos id’s facilita no Equals(), outros (inclusive essa era a visão do meu professor na faculdade) diziam que classes não deveriam ter id’s, pois fere o principio de mapeamento objeto-relacional.
Eu queria saber a opinião de vocês sobre esses assuntos, vcs costumam criar sempre os id’s no banco? E esses id’s refletem nas classes java? E qual o ganho disso. Como eu disse, eu vi esse padrão em dois dos meus três projetos, mas nunca sobe o ganho real disso.
Esse é meu primeiro post no forum, eu dei uma pesquisada sobre o assunto e não encontrei nada, se de repente já tiver um post sobre isso peço desculpas.
Muito obrigado!
