我们正在使用 Netbeans 实用程序从数据库表生成实体类,现在我们可以反向执行此操作。就像从表到实体 POJO 一样,反之亦然,这样当我们在实体 POJO 中进行任何更改时,我们都会获得更新的 SQL。
Eclipse 也有类似的可用于 JPA 的实用程序,但它不会执行相反的操作,现在的问题是,在从表生成实体 POJO 时,我们无法选择命名约定。我们得到所有小写的字段名称,对于类来说也是如此,其中没有任何东西是驼峰式的,只是第一个字母大写,而其他所有字母都是小写。
现在这似乎给我们定义的编码标准带来了问题,因为它要求我们对变量和方法名称使用驼峰式命名。
因此,我们与团队进行了讨论,一个想法是在整个项目中将所有变量保持为小写,但我个人并不同意这一点,因为这会使代码非常难以阅读,因为我们不打算使用下划线来分隔单词。您可以对此标准投票。
您认为最好的出路是什么?是否有任何实体 POJO 生成器可用,它可以两种方式转换,并且在发现下划线时仍然能够从数据库表名称转换为驼峰式大小写?
最佳答案
最好的解决方案是立即停止并转向标准 java 命名约定:
- 变量和方法名称以小写字母开头
- 类和接口(interface)名称以大写字母开头
- 使用 Camel 约定。除常量外不能有下划线(见下文)
- 公共(public)最终静态字段名称全部大写并带下划线(如 C 中的
#define
)。对于enum
字段也建议这样做(但这个建议并不那么严格)
如果我忘记了什么,我很抱歉。但是遵循大多数开发人员适用的命名和编码约定非常重要。首先,这些惯例是基于非常丰富的经验。不要认为你可以改进它们。你不能。我也不能啊:) 其次遵循编码约定可以使您的代码易于其他人理解并避免愚蠢的错误。
关于Java 编码标准 - 所有变量名均小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14109368/