如何从实体 jpa 命令中删除版本

How to remove version from entity jpa command

我正在使用 Spring Roo 2.0.0.M3 和 Spring Tool Suite 3.8.3。我对 "entity jpa" 命令有疑问。我用它来定义描述 MySql table 的 class。 table 没有版本列,但实体 jpa 命令强制我使用一个。这是我使用的命令:

entity jpa --class ~.domain.SFDCRecordTypeAccount --table sfdc_record_type_account --identifierColumn sfdc_record_type_account_id --versionField version --versionColumn version --versionType int --sequenceName sequenceName --identifierStrategy AUTO 

现在我有一个 class 不能准确反映 MySql table。我唯一的选择是从 java 代码中手动删除版本,还是有某种方法可以通过 Spring Roo 删除它?

默认情况下,Spring Roo 包含版本字段以便能够在实体编辑期间管理并发性。强烈建议包含此字段以防止更新期间丢失信息。

正如我所说,Spring Roo 包含它以防止信息丢失,但如果您不需要它,您可以直接从 .java class 中删除它.

如此简单!

另一种可能的解决方案是删除 @Version 注释并包含 @Transient 以忽略此字段。

无论如何,我建议您始终使用生成的字段version

希望对您有所帮助,