Nas descrições do @ GeneratedValue , @ SequenceGenerator e @ TableGenerator anotações na Persistência Java Specification, certos padrões são apontados como específicos para o provedor de persistência. Principais padrões de geração de chaves do provedor de persistência padrão estão listados aqui.
@ GeneratedValue padrões são os seguintes:
Usando estratégia = AUTO (ou não estratégia ) cria um @ TableGenerator chamado SEQ_GEN com configurações padrão. A especificação de umgerador não tem efeito.
Usando estratégia = TABLE sem a especificação de um gerador cria um @ TableGenerator chamado SEQ_GEN_TABLE com configurações padrão.A especificação de um gerador , mas não @ TableGenerator cria e nomeia um @ TableGenerator com configurações padrão.
Usando estratégia = IDENTIDADE ou estratégia = seqüência produz os mesmos resultados, que são específicas do banco de dados.
Para bancos de dados Oracle, não especificando um gerador cria um @ SequenceGenerator chamado SEQ_GEN_SEQUENCE com configurações padrão. A especificação de um gerador , mas não @ SequenceGenerator cria e nomeia um @ SequenceGenerator com configurações padrão.
Para bancos de dados PostgreSQL, um SERIAL coluna chamada entidade de mesa _ pk-coluna _seq é criado.
Para bancos de dados MySQL, um AUTO_INCREMENT coluna é criada.
Para outros bancos de dados suportados, uma IDENTIDADE coluna é criada.
O @ SequenceGenerator anotação tem um padrão específico para o provedor padrão. O padrão da sequï é o especificado nome .
@ TableGenerator padrões são os seguintes:
O padrão da tabela é SEQÜÊNCIA .
O padrão pkColumnName é SEQ_NAME .
O padrão valueColumnName é SEQ_COUNT .
O padrão pkColumnValue é o especificado nome , ou o padrão nome se nenhum nome for especificado.
In the descriptions of the @GeneratedValue, @SequenceGenerator, and @TableGenerator annotations in the Java Persistence Specification, certain defaults are noted as specific to the persistence provider. The default persistence provider's primary key generation defaults are listed here.
@GeneratedValue defaults are as follows:
Using strategy=AUTO (or no strategy) creates a @TableGenerator named SEQ_GEN with default settings. Specifying a generator has no effect.
Using strategy=TABLE without specifying a generator creates a @TableGenerator named SEQ_GEN_TABLE with default settings. Specifying agenerator but no @TableGenerator creates and names a @TableGenerator with default settings.
Using strategy=IDENTITY or strategy=SEQUENCE produces the same results, which are database-specific.
For Oracle databases, not specifying a generator creates a @SequenceGenerator named SEQ_GEN_SEQUENCE with default settings. Specifying a generator but no @SequenceGenerator creates and names a @SequenceGenerator with default settings.
For PostgreSQL databases, a SERIAL column named entity-table_pk-column_SEQ is created.
For MySQL databases, an AUTO_INCREMENT column is created.
For other supported databases, an IDENTITY column is created.
The @SequenceGenerator annotation has one default specific to the default provider. The default sequenceName is the specified name.
@TableGenerator defaults are as follows:
The default table is SEQUENCE.
The default pkColumnName is SEQ_NAME.
The default valueColumnName is SEQ_COUNT.
The default pkColumnValue is the specified name, or the default name if no name is specified.
Nome...: PAULO PACHECOE-Mail.: PauloSS...@gmail.com.brMSN....: PauloSS...@Hotmail.com
Yahoo..: PauloSSPacheco@yahoo.comFixo...: 085 3086 6769Celular: 085 8888 4498 OI085 9702 4498 TIM