0

我想知道为什么 hibernate 将 id 映射到单独的类中,这很烦人!

所以,我有这张表 Productlanguages ,其中每一行都有一个 id。这个 id 设置为自动递增,所以通常我不必自己添加它。然而,休眠自动映射添加了一个带有以下代码的新类 ProductlanguageId:http: //pastebin.com/Dwy17BX1

现在 productlanguages 的 id 被设置为这个类的一个对象。

谁能告诉我为什么hibernate创建了这个类以及我应该如何使用这个类?因为我真的不知道。

编辑: 我发现这是因为这个表的主键是由三列组成的。您可以在此屏幕截图中看到这一点: 在此处输入图像描述

但是,我仍然不知道如何创建这个Id,因为ProductlanguageId类中的id需要自动生成。事实并非如此。谁能告诉我如何确保这是自动完成的?

我已经使用 netbeans 自动生成了映射。

4

1 回答 1

0

为什么需要使用嵌入式复合 ID?如果它是嵌入的,那​​么您实际上可以采用两种方式 - 要么使用来自同一类的字段(但是你会遇到问题,例如在通过 id 获取对象期间),或者通过添加额外的类(你是如何做到的)。

但这一切只有在您使用复合 ID 时才需要,如果您的 ID 只是一个整数,您可以使用本机 ID 生成器,您不需要为此创建单独的类。

于 2012-11-25T17:34:02.457 回答