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);
|
}
|
}
|