Top Description Fields Constructors Methods
org.hibernate

public final Class Length

extends Object
Class Inheritance

Defines a list of useful constant values that may be used to specify long column lengths in the JPA jakarta.persistence.Column annotation.

For example, @Column(length=LONG16) would specify that Hibernate should generate DDL with a column type capable of holding strings with 16-bit lengths.

Author
Gavin King
Since
6.0
See Also
jakarta.persistence.Column#length()

Field Summary

Modifier and TypeField and Description
public static final int
DEFAULT

The default length for a column in JPA.

public static final int
LOB_DEFAULT

The default length for a LOB column, on databases where LOB columns have a length.

public static final int
LONG

Used to select a variable-length SQL type large enough to contain values of maximum length 32600.

public static final int
LONG16

The maximum length that fits in 16 bits.

public static final int
LONG32

The maximum length of a Java string or array, that is, the maximum length that fits in 32 bits.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

DEFAULTback to summary
public static final int DEFAULT

The default length for a column in JPA.

See Also
jakarta.persistence.Column#length(), org.hibernate.type.descriptor.java.JavaType#getDefaultSqlLength
LOB_DEFAULTback to summary
public static final int LOB_DEFAULT

The default length for a LOB column, on databases where LOB columns have a length.

See Also
org.hibernate.dialect.Dialect#getDefaultLobLength, org.hibernate.type.SqlTypes#CLOB, org.hibernate.type.SqlTypes#BLOB
LONGback to summary
public static final int LONG

Used to select a variable-length SQL type large enough to contain values of maximum length 32600. This arbitrary-looking number was chosen because some databases support variable-length types right up to a limit that is just slightly below 32767. (For some, the limit is 32672 characters.)

This is also the default length for a column declared using @JdbcTypeCode(Types.LONGVARCHAR) or @JdbcTypeCode(Types.LONGVARBINARY).

For example, @Column(length=LONG) results in the column type:

varchar(32600)on h2, Db2, and PostgreSQL
texton MySQL
clobon Oracle
varchar(max)on SQL Server
See Also
org.hibernate.type.descriptor.java.JavaType#getLongSqlLength, org.hibernate.type.SqlTypes#LONGVARCHAR, org.hibernate.type.SqlTypes#LONGVARBINARY
LONG16back to summary
public static final int LONG16

The maximum length that fits in 16 bits. Used to select a variable-length SQL type large enough to accommodate values of maximum length 32767.

For example, @Column(length=LONG16) results in the column type:

varchar(32767)on h2 and PostgreSQL
texton MySQL
clobon Oracle and Db2
varchar(max)on SQL Server
LONG32back to summary
public static final int LONG32

The maximum length of a Java string or array, that is, the maximum length that fits in 32 bits. Used to select a variable-length SQL type large enough to accommodate any Java string up to the maximum possible length 2147483647.

This is also the default length for a column declared using @JdbcTypeCode(SqlTypes.LONG32VARCHAR) or @JdbcTypeCode(SqlTypes.LONG32VARBINARY).

For example, @Column(length=LONG32) results in the column type:

texton PostgreSQL
longtexton MySQL
clobon h2, Oracle, and Db2
varchar(max)on SQL Server
See Also
org.hibernate.type.SqlTypes#LONG32VARCHAR, org.hibernate.type.SqlTypes#LONG32VARBINARY

Constructor Detail

Lengthback to summary
private Length()