La mia strategia di denominazione in sospensione era quella predefinita: EJB3NamingStrategy. Quindi i nomi dei campi e dei tavoli erano in camelcase. L'ho cambiato in ImprovedNamingStrategy per avere il snakecase.EJB3NamingStrategy vs MigliovedNamingStrategy Denominazione delle chiavi esterne
Ma le mie chiavi esterne non includono il nome della chiave primaria dell'entità referenziata nel nome.
Esempio:
Tabella 1: id nome
Con EJB3NamingStrategy i campi table2 saranno:
table2: id table1_id
ma con ImprovedNamingStrategy i campi Table2 sarà : table2: id table1
C'è un modo per avere _id con ImprovedNamingStrategy. Non capisco perché hibernate si comporti in modo diverso perché il metodo logicalCollectionColumnName in entrambe le strategie è identico.
il parametro ricevuto in logicalCollectionColumnName contiene già column_id se uso EJB3NamingStrategy ma se uso ImprovedNamingStrategy il parametro non lo riceve. Non capisco perché. Questo metodo è chiamato da qualche altra parte nel codice. – Mike
Sì, la tua scrittura, non stavo cercando il metodo giusto. La parte id è commentata – Mike