Вы можете сделать это с помощью пользовательского диалекта, но для этого потребуется указать его вручную, а не разрешить автоопределение.
package com.example
public class CustomDialect extends PostgreSQL95Dialect {
public CustomDialect () {
this.registerColumnType(Types.BLOB, "lo");
}
}
hibernate.dialect=com.example.CustomDialect
Это становится более сложным, если тип квалифицирован схемой, а не полагается на путь поиска. Вам нужно будет зарегистрироваться, например, "\"public\".\"lo\""
Вы можете использовать пользовательский DialectResolver
только для замены обнаруженных диалектов postgres, но если вы хотите поддерживать несколько версий, вам понадобится много классов: CustomPostgreSQL95Dialect
, CustomPostgreSQL94Dialect
и т. Д.
package com.example
public class CustomDialectResolver extends BasicDialectResolver {
public CustomDialectResolver() {
super("PostgreSQL", CustomDialect.class);
}
}
hibernate.dialect_resolvers=com.example.CustomDialectResolver