如何使用 Quarkus 和 Panache 在 snake case 中获取 table 个名字

How to get table names in snake case with Quarkus and Panache

我有 Java 个具有复合驼峰命名法的实体,例如 EmployeeProject.

我需要将 table 上的那些实体映射到蛇形名称,例如 employee_project,而不是 Quarkus/Panache 使用的默认值,例如 employeeproject .

我知道我可以使用 @Entity(name = "employee_project") 设置自定义 table 名称,但我想知道是否有某种应用程序 属性 可以为我做同样的工作。

您可以为此创建自定义命名策略。另请参阅以下文章,其中包含此用例的示例:https://thorben-janssen.com/naming-strategies-in-hibernate-5/#Names_in_snake_case_instead_of_camel_case

如果使用 Christian 的回答并实施 SnakeCaseNamingStrategy (see here),您可以使用 application.properties 在 Quarkus 中配置它。这样您就不必在 persistence.xml.

中完成配置休眠
quarkus.hibernate-orm.physical-naming-strategy=com.example.SnakeCaseNamingStrategy