Kể từ Hibernate 5.2.18, bạn có thể sử dụng tiện ích MetadataBuilderContributor để tùy chỉnh MetadataBuilder ngay cả khi bạn đang khởi động thông qua JPA.
MetadataBuilderContributor
giao diện có thể được triển khai như thế này:
public class SqlFunctionsMetadataBuilderContributor
implements MetadataBuilderContributor {
@Override
public void contribute(MetadataBuilder metadataBuilder) {
metadataBuilder.applySqlFunction(
"group_concat",
new StandardSQLFunction(
"group_concat",
StandardBasicTypes.STRING
)
);
}
}
Và, chúng tôi có thể cung cấp SqlFunctionsMetadataBuilderContributor thông qua thuộc tính cấu hình hibernate.metadata_builder_contributor:
<property>
name="hibernate.metadata_builder_contributor"
value="com.vladmihalcea.book.hpjp.hibernate.query.function.SqlFunctionsMetadataBuilderContributor"
</property>
Tham khảo: https://vladmihalcea.com/hibernate-sql- function-jpql-criteria-api-query /