Class Column

java.lang.Object
org.hibernate.mapping.Column
All Implemented Interfaces:
Serializable, Cloneable, Selectable, ColumnTypeInformation
Direct Known Subclasses:
AggregateColumn, ExportableColumn

public class Column extends Object implements Selectable, Serializable, Cloneable, ColumnTypeInformation
A mapping model object representing a column of a relational database table.
See Also:
  • Constructor Details

    • Column

      public Column()
    • Column

      public Column(String columnName)
  • Method Details

    • getLength

      public Long getLength()
    • setLength

      public void setLength(Long length)
    • setLength

      public void setLength(Integer length)
    • getArrayLength

      public Integer getArrayLength()
    • setArrayLength

      public void setArrayLength(Integer arrayLength)
    • getValue

      public Value getValue()
    • setValue

      public void setValue(Value value)
    • getName

      public String getName()
    • setName

      public void setName(String name)
    • getNameIdentifier

      @Internal public Identifier getNameIdentifier(MetadataBuildingContext buildingContext)
    • isExplicit

      public boolean isExplicit()
    • setExplicit

      public void setExplicit(boolean explicit)
    • isIdentity

      public boolean isIdentity()
    • setIdentity

      public void setIdentity(boolean identity)
    • getQuotedName

      public String getQuotedName()
      Returns:
      the quoted name as it would occur in the mapping file
    • getQuotedName

      public String getQuotedName(Dialect dialect)
      Returns:
      the quoted name using the quoting syntax of the given dialect
    • getAlias

      public String getAlias(Dialect dialect)
      Specified by:
      getAlias in interface Selectable
    • getAlias

      public String getAlias(Dialect dialect, Table table)
      Generate a column alias that is unique across multiple tables
      Specified by:
      getAlias in interface Selectable
    • isNullable

      public boolean isNullable()
    • setNullable

      public void setNullable(boolean nullable)
    • getTypeIndex

      public int getTypeIndex()
    • setTypeIndex

      public void setTypeIndex(int typeIndex)
    • isUnique

      public boolean isUnique()
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object object)
      Overrides:
      equals in class Object
    • equals

      public boolean equals(Column column)
    • getSqlTypeCode

      public int getSqlTypeCode(Mapping mapping) throws MappingException
      Throws:
      MappingException
    • getSqlTypeCode

      public Integer getSqlTypeCode()
      Returns SQL type code for this column, or null if the type code is unknown.

      Use getSqlTypeCode(Mapping) to retrieve the type code using Value associated with the column.

      Returns:
      the type code, if it is set, otherwise null.
    • setSqlTypeCode

      public void setSqlTypeCode(Integer typeCode)
    • getSqlType

      public String getSqlType(Metadata mapping)
    • getSqlType

      @Deprecated(since="6.2") public String getSqlType(TypeConfiguration typeConfiguration, Dialect dialect, Mapping mapping)
      Deprecated.
    • getTypeName

      public String getTypeName()
      Description copied from interface: ColumnTypeInformation
      The database specific type name.
      Specified by:
      getTypeName in interface ColumnTypeInformation
      Returns:
      Type name
    • getNullable

      public TruthValue getNullable()
      Description copied from interface: ColumnTypeInformation
      Is the column nullable. The database is allowed to report unknown, hence the use of TruthValue
      Specified by:
      getNullable in interface ColumnTypeInformation
      Returns:
      nullability.
    • getTypeCode

      public int getTypeCode()
      Description copied from interface: ColumnTypeInformation
      The JDBC type-code.
      Specified by:
      getTypeCode in interface ColumnTypeInformation
      Returns:
      JDBC type-code
    • getColumnSize

      public int getColumnSize()
      Description copied from interface: ColumnTypeInformation
      The column size (length).
      Specified by:
      getColumnSize in interface ColumnTypeInformation
      Returns:
      The column length
    • getDecimalDigits

      public int getDecimalDigits()
      Description copied from interface: ColumnTypeInformation
      The precision, for numeric types
      Specified by:
      getDecimalDigits in interface ColumnTypeInformation
      Returns:
      The numeric precision
    • getColumnSize

      public Size getColumnSize(Dialect dialect, Mapping mapping)
    • getSqlType

      public String getSqlType()
    • setSqlType

      public void setSqlType(String typeName)
    • isSqlTypeLob

      public boolean isSqlTypeLob()
    • isSqlTypeLob

      public boolean isSqlTypeLob(Metadata mapping)
    • setUnique

      public void setUnique(boolean unique)
    • getUniqueKeyName

      public String getUniqueKeyName()
    • setUniqueKeyName

      public void setUniqueKeyName(String keyName)
    • isQuoted

      public boolean isQuoted()
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • addCheckConstraint

      public void addCheckConstraint(CheckConstraint checkConstraint)
    • getCheckConstraints

      public List<CheckConstraint> getCheckConstraints()
    • getCheckConstraint

      @Deprecated(since="6.2") public String getCheckConstraint()
      Deprecated.
    • setCheckConstraint

      @Deprecated(since="6.2") public void setCheckConstraint(String constraint)
      Deprecated.
    • hasCheckConstraint

      public boolean hasCheckConstraint()
    • checkConstraint

      @Deprecated(since="6.2") public String checkConstraint()
      Deprecated.
    • getTemplate

      public String getTemplate(Dialect dialect, TypeConfiguration typeConfiguration, SqmFunctionRegistry registry)
      Specified by:
      getTemplate in interface Selectable
    • hasCustomRead

      public boolean hasCustomRead()
    • getReadExpr

      public String getReadExpr(Dialect dialect)
    • getWriteExpr

      public String getWriteExpr()
      Specified by:
      getWriteExpr in interface Selectable
    • isFormula

      public boolean isFormula()
      Description copied from interface: Selectable
      Does this selectable represent a formula? true indicates it is a formula; false indicates it is a physical column
      Specified by:
      isFormula in interface Selectable
    • getText

      public String getText(Dialect dialect)
      Description copied from interface: Selectable
      The selectable's text representation accounting for the Dialect's quoting, if quoted
      Specified by:
      getText in interface Selectable
    • getText

      public String getText()
      Description copied from interface: Selectable
      The selectable's "canonical" text representation
      Specified by:
      getText in interface Selectable
    • getCustomReadExpression

      public String getCustomReadExpression()
      Description copied from interface: Selectable
      Any custom read expression for this selectable. Only pertinent for physical columns (not formulas)
      Specified by:
      getCustomReadExpression in interface Selectable
      See Also:
    • getCustomWriteExpression

      public String getCustomWriteExpression()
      Description copied from interface: Selectable
      Any custom write expression for this selectable. Only pertinent for physical columns (not formulas)
      Specified by:
      getCustomWriteExpression in interface Selectable
      See Also:
    • getPrecision

      public Integer getPrecision()
    • setPrecision

      public void setPrecision(Integer precision)
    • getScale

      public Integer getScale()
    • setScale

      public void setScale(Integer scale)
    • getTemporalPrecision

      public Integer getTemporalPrecision()
    • setTemporalPrecision

      public void setTemporalPrecision(Integer temporalPrecision)
    • getComment

      public String getComment()
    • setComment

      public void setComment(String comment)
    • getCollation

      public String getCollation()
    • setCollation

      public void setCollation(String collation)
    • getDefaultValue

      public String getDefaultValue()
    • setDefaultValue

      public void setDefaultValue(String defaultValue)
    • getGeneratedAs

      public String getGeneratedAs()
    • setGeneratedAs

      public void setGeneratedAs(String generatedAs)
    • getAssignmentExpression

      public String getAssignmentExpression()
    • setAssignmentExpression

      public void setAssignmentExpression(String assignmentExpression)
    • getCustomWrite

      public String getCustomWrite()
    • setCustomWrite

      public void setCustomWrite(String customWrite)
    • getCustomRead

      public String getCustomRead()
    • setResolvedCustomRead

      public void setResolvedCustomRead(String customRead)
    • setCustomRead

      public void setCustomRead(String customRead)
    • getCanonicalName

      public String getCanonicalName()
    • clone

      public Column clone()
      Shallow copy, the value is not copied
      Overrides:
      clone in class Object