Package org.hibernate.cfg
Interface NamingStrategy
- All Known Implementing Classes:
DefaultComponentSafeNamingStrategy,DefaultNamingStrategy,EJB3NamingStrategy,ImprovedNamingStrategy
public interface NamingStrategy
A set of rules for determining the physical column
and table names given the information in the mapping
document. May be used to implement project-scoped
naming standards for database objects.
#propertyToTableName(String, String) should be replaced by
collectionTableName(String,String,String,String,String)- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionclassToTableName(String className) Return a table name for an entity classcollectionTableName(String ownerEntity, String ownerEntityTable, String associatedEntity, String associatedEntityTable, String propertyName) Return a collection table name ie an association having a join tablecolumnName(String columnName) Alter the column name given in the mapping documentforeignKeyColumnName(String propertyName, String propertyEntityName, String propertyTableName, String referencedColumnName) Return the foreign key column name for the given parametersjoinKeyColumnName(String joinedColumn, String joinedTable) Return the join key column name ie a FK column used in a JOINED strategy or for a secondary tablelogicalCollectionColumnName(String columnName, String propertyName, String referencedColumn) Returns the logical foreign key column name used to refer to this column in the mapping metadatalogicalCollectionTableName(String tableName, String ownerEntityTable, String associatedEntityTable, String propertyName) Returns the logical collection table name used to refer to a table in the mapping metadatalogicalColumnName(String columnName, String propertyName) Return the logical column name used to refer to a column in the metadata (like index, unique constraints etc) A full bijection is required between logicalNames and physical ones logicalName have to be case insersitively unique for a given tablepropertyToColumnName(String propertyName) Return a column name for a property path expressionAlter the table name given in the mapping document
-
Method Details
-
classToTableName
Return a table name for an entity class- Parameters:
className- the fully-qualified class name- Returns:
- a table name
-
propertyToColumnName
Return a column name for a property path expression- Parameters:
propertyName- a property path- Returns:
- a column name
-
tableName
Alter the table name given in the mapping document- Parameters:
tableName- a table name- Returns:
- a table name
-
columnName
Alter the column name given in the mapping document- Parameters:
columnName- a column name- Returns:
- a column name
-
collectionTableName
String collectionTableName(String ownerEntity, String ownerEntityTable, String associatedEntity, String associatedEntityTable, String propertyName) Return a collection table name ie an association having a join table- Parameters:
ownerEntity-ownerEntityTable- owner side table nameassociatedEntity-associatedEntityTable- reverse side table name if anypropertyName- collection role
-
joinKeyColumnName
Return the join key column name ie a FK column used in a JOINED strategy or for a secondary table- Parameters:
joinedColumn- joined column name (logical one) used to join withjoinedTable- joined table name (ie the referenced table) used to join with
-
foreignKeyColumnName
String foreignKeyColumnName(String propertyName, String propertyEntityName, String propertyTableName, String referencedColumnName) Return the foreign key column name for the given parameters- Parameters:
propertyName- the property name involvedpropertyEntityName-propertyTableName- the property table name involved (logical one)referencedColumnName- the referenced column name involved (logical one)
-
logicalColumnName
Return the logical column name used to refer to a column in the metadata (like index, unique constraints etc) A full bijection is required between logicalNames and physical ones logicalName have to be case insersitively unique for a given table- Parameters:
columnName- given column name if anypropertyName- property name of this column
-
logicalCollectionTableName
String logicalCollectionTableName(String tableName, String ownerEntityTable, String associatedEntityTable, String propertyName) Returns the logical collection table name used to refer to a table in the mapping metadata- Parameters:
tableName- the metadata explicit nameownerEntityTable- owner table entity table name (logical one)associatedEntityTable- reverse side table name if any (logical one)propertyName- collection role
-
logicalCollectionColumnName
Returns the logical foreign key column name used to refer to this column in the mapping metadata- Parameters:
columnName- given column name in the metadata if anypropertyName- property namereferencedColumn- referenced column name (logical one) in the join
-