Hobernate mapping

Pessoal pra que serve o campo <id> do hibernate? É a declaracao da chave primaria da tabela? Percebi depois de ter feito alguns testes e ter finalmente uma simples insercao. Mas isso nao é trabalho do sgbd? E pq o hibernate nao faz apenas o mapeamento normal dos campos de uma tabela sem precisar de <id>. E se isso é possivel sem <id> queria que algem dissesse .

  Valeu galera,  vc ajudam muito.  Joao.

Sim, o campo id serve como chave primária. Mas sem o id como você está pensando selecionar algum dado específico???

Se você estive utilizando auto-incremento na tua chave primária coloque sempre 0 para id que o banco de dados irá gerar um código numerado conforme o que você deseja.

:okok:

Ele poderia usar uma chave natural, geralmenet composta, mas há recomendações para se utilizar o ID mesmo como chave primária.

“We?ve mentioned that we think natural primary keys are a bad idea. Natural keys
often make it difficult to refactor the data model when business requirements
change. They may even, in extreme cases, impact performance. Unfortunately,
many legacy schemas use (natural) composite keys heavily, and, for the very reason
that we discourage the use of composite keys, it may be difficult to change the
legacy schema to use surrogate keys. Therefore, Hibernate supports the use of
natural keys. If the natural key is a composite key, support is via the <compositeid>
mapping.”

(Hibernate in Action)

valeu marcos e taz eu dei uma lida com mais calma no hibernate ref. vcs conhecem alguma ferramenta free pra fazer esse mapeamento?

Opa,

dei uma pesquisada tem o Hibernate Synchronizer para o eclipse dê uma olhada neste link http://sourceforge.net/project/showfiles.php?group_id=99370

:okok: