我必须映射一个传统数据库以用于只读目的,其中包含以下结构:
Table MAIN:
id productId productType
Table PRODUCT_A:
id description_a
Table PRODUCT_B:
id description_b
Table PRODUCT_C:
id description_c
根据 ProductTyp 列中的值,productId 引用 Product_A、Product_B 或 Product_C。
我为每个表创建一个 Java 实体。 Main 类包含每个产品的一个集合。
产品与主类不存在"is"关系。其他情况下作为独立实体使用。
有什么方法可以使用 hbm.xml 文件来映射它吗?
最佳答案
看起来您正在使用鉴别器使用每子类表策略来寻找继承。在 Java 中,每个 PRODUCT_X 类都应该扩展 Main 类。 This page解释了实现该策略的细节。
关于Hibernate 映射条件多对一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1797108/