Class PostgreSQLIntervalType
- java.lang.Object
-
- com.vladmihalcea.hibernate.type.ImmutableType<java.time.Duration>
-
- com.vladmihalcea.hibernate.type.interval.PostgreSQLIntervalType
-
- All Implemented Interfaces:
java.io.Serializable
,org.hibernate.type.Type
,org.hibernate.usertype.UserType
public class PostgreSQLIntervalType extends ImmutableType<java.time.Duration>
Maps a JavaDuration
object to a PostgreSQL Interval column type.For more details about how to use it, check out this article on vladmihalcea.com.
- Since:
- 2.5.1
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static PostgreSQLIntervalType
INSTANCE
private static double
MICROS_IN_SECOND
-
Constructor Summary
Constructors Constructor Description PostgreSQLIntervalType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.time.Duration
get(java.sql.ResultSet rs, java.lang.String[] names, org.hibernate.engine.spi.SharedSessionContractImplementor session, java.lang.Object owner)
Get the column value from the JDBCResultSet
.protected void
set(java.sql.PreparedStatement st, java.time.Duration value, int index, org.hibernate.engine.spi.SharedSessionContractImplementor session)
Set the column value on the provided JDBCPreparedStatement
.int[]
sqlTypes()
-
Methods inherited from class com.vladmihalcea.hibernate.type.ImmutableType
assemble, assemble, beforeAssemble, compare, deepCopy, deepCopy, defaultSizes, dictatedSizes, disassemble, disassemble, equals, getColumnSpan, getConfiguration, getHashCode, getHashCode, getName, getReturnedClass, getSemiResolvedType, hashCode, hydrate, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, nullSafeGet, nullSafeGet, nullSafeSet, nullSafeSet, replace, replace, replace, resolve, returnedClass, semiResolve, sqlTypes, toColumnNullness, toLoggableString
-
-
-
-
Field Detail
-
MICROS_IN_SECOND
private static final double MICROS_IN_SECOND
- See Also:
- Constant Field Values
-
INSTANCE
public static final PostgreSQLIntervalType INSTANCE
-
-
Method Detail
-
get
protected java.time.Duration get(java.sql.ResultSet rs, java.lang.String[] names, org.hibernate.engine.spi.SharedSessionContractImplementor session, java.lang.Object owner) throws java.sql.SQLException
Description copied from class:ImmutableType
Get the column value from the JDBCResultSet
.- Specified by:
get
in classImmutableType<java.time.Duration>
- Parameters:
rs
- JDBCResultSet
names
- database column namesession
- current HibernateSession
owner
- current HibernateSessionFactoryImplementor
- Returns:
- column value
- Throws:
java.sql.SQLException
- in case of failure
-
set
protected void set(java.sql.PreparedStatement st, java.time.Duration value, int index, org.hibernate.engine.spi.SharedSessionContractImplementor session) throws java.sql.SQLException
Description copied from class:ImmutableType
Set the column value on the provided JDBCPreparedStatement
.- Specified by:
set
in classImmutableType<java.time.Duration>
- Parameters:
st
- JDBCPreparedStatement
value
- database column valueindex
- database column indexsession
- current HibernateSession
- Throws:
java.sql.SQLException
- in case of failure
-
sqlTypes
public int[] sqlTypes()
-
-