package tech.powerjob.server.config; import org.hibernate.dialect.PostgreSQL10Dialect; import org.hibernate.type.descriptor.sql.LongVarbinaryTypeDescriptor; import org.hibernate.type.descriptor.sql.LongVarcharTypeDescriptor; import org.hibernate.type.descriptor.sql.SqlTypeDescriptor; import java.sql.Types; public class AdpPostgreSQLDialect extends PostgreSQL10Dialect { public AdpPostgreSQLDialect() { super(); registerColumnType(Types.BLOB, "bytea"); registerColumnType(Types.CLOB, "text"); } @Override public SqlTypeDescriptor remapSqlTypeDescriptor(SqlTypeDescriptor sqlTypeDescriptor) { switch (sqlTypeDescriptor.getSqlType()) { case Types.CLOB: return LongVarcharTypeDescriptor.INSTANCE; case Types.BLOB: return LongVarbinaryTypeDescriptor.INSTANCE; case Types.NCLOB: return LongVarbinaryTypeDescriptor.INSTANCE; } return super.remapSqlTypeDescriptor(sqlTypeDescriptor); } }