Pergunta

Eu reverso a classe de entidade de engate, mas a chave primária não é anotada com GeradoValue . Minha mesa é criada no Oracle. Preciso acrescentar contrato na chave primária da tabela para incremento automático?

Rightn ow eu edito manualmente a entidade e adiciono GeneratedValue. procurando uma melhor solução. Eu acho que quando o motor reverso, ele supõe gerar aquelas anotações

Foi útil?

Solução

A NetBeans realmente faz um bom trabalho de geração rapidamente de uma estrutura de esqueletos de suas classes de entidade a partir de uma estrutura de banco de dados já no local. Com isso dito, você deve se lembrar de que ainda é apenas o suficiente para fazer você correr e seria tolice considerar o código de grau de produção. Você terá que refinar ainda mais.

Em Java, o que eu geralmente me pego é criar cuidadosamente meu modelo de dados usando qualquer uma das várias ferramentas (tentarei evitar fazer um discurso de vendas aqui). Depois de sentir que é bastante desenvolvido, vou gerar o DDL, vomitar o banco de dados e, em seguida, reverter o engenheiro usando uma ferramenta. Mas eu sempre Siga isso passando pelo código e corrigindo conforme necessário. A partir desse momento, costumo fazer alterações nas minhas entidades primeiro e depois propagar manualmente as alterações equivalentes ao banco de dados.

Já faz um tempo desde que fiz algum desenvolvimento sério de Java/DB simplesmente porque o grande projeto em que estou trabalhando possui uma equipe dedicada de banco de dados, para que possa haver algumas boas ferramentas agora que podem gerar seu DDL e entidades com muita precisão e em sincronia. No entanto, mesmo se fosse esse o caso, eu provavelmente ainda seguiria a prática acima para qualquer projeto de pequeno a médio porte.

Outras dicas

Eu nunca vi uma ferramenta JPA que engenharia reversa um banco de dados Oracle corretamente. Eu sempre tive que fazer muitas modificações no código de engenharia reversa. Normalmente, apenas o engenheiro reversa de uma vez e depois propaga todas as novas alterações do código para o banco de dados.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top