public interface

NamingStrategy

org.hibernate.cfg.NamingStrategy
Known Indirect Subclasses

Class Overview

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)

Summary

Public Methods
abstract String classToTableName(String className)
Return a table name for an entity class
abstract String collectionTableName(String ownerEntity, String ownerEntityTable, String associatedEntity, String associatedEntityTable, String propertyName)
Return a collection table name ie an association having a join table
abstract String columnName(String columnName)
Alter the column name given in the mapping document
abstract String foreignKeyColumnName(String propertyName, String propertyEntityName, String propertyTableName, String referencedColumnName)
Return the foreign key column name for the given parameters
abstract String joinKeyColumnName(String joinedColumn, String joinedTable)
Return the join key column name ie a FK column used in a JOINED strategy or for a secondary table
abstract String logicalCollectionColumnName(String columnName, String propertyName, String referencedColumn)
Returns the logical foreign key column name used to refer to this column in the mapping metadata
abstract 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
abstract String logicalColumnName(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 table
abstract String propertyToColumnName(String propertyName)
Return a column name for a property path expression
abstract String tableName(String tableName)
Alter the table name given in the mapping document

Public Methods

public abstract String classToTableName (String className)

Return a table name for an entity class

Parameters
className the fully-qualified class name
Returns
  • a table name

public abstract 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
ownerEntityTable owner side table name
associatedEntityTable reverse side table name if any
propertyName collection role

public abstract String columnName (String columnName)

Alter the column name given in the mapping document

Parameters
columnName a column name
Returns
  • a column name

public abstract 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 involved
propertyTableName the property table name involved (logical one)
referencedColumnName the referenced column name involved (logical one)

public abstract String joinKeyColumnName (String joinedColumn, String joinedTable)

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 with
joinedTable joined table name (ie the referenced table) used to join with

public abstract String logicalCollectionColumnName (String columnName, String propertyName, String referencedColumn)

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 any
propertyName property name
referencedColumn referenced column name (logical one) in the join

public abstract 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 name
ownerEntityTable owner table entity table name (logical one)
associatedEntityTable reverse side table name if any (logical one)
propertyName collection role

public abstract String logicalColumnName (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 table

Parameters
columnName given column name if any
propertyName property name of this column

public abstract String propertyToColumnName (String propertyName)

Return a column name for a property path expression

Parameters
propertyName a property path
Returns
  • a column name

public abstract String tableName (String tableName)

Alter the table name given in the mapping document

Parameters
tableName a table name
Returns
  • a table name