Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 同一表中不同项的休眠映射_Java_Hibernate - Fatal编程技术网

Java 同一表中不同项的休眠映射

Java 同一表中不同项的休眠映射,java,hibernate,Java,Hibernate,我有以下三个课程[促销、产品和形象]促销有一个图像产品具有图像的列表/集合。将来可能会有新的类,它们也有图像或图像的集合 我想将所有图像放在同一个图像表中(例如::image\u table)。这意味着促销的图像和产品中的图像集合都将进入同一个表中 例如,我不能在Image类中放置两个@OneToMany/@ManyToOne注释,因为在Image表(例如::Image\u表)中会有两个不同的外键(促销和产品)。将来如果有更多的类具有image,那么我必须添加额外的@OneToMany/@Man

我有以下三个课程
[促销、产品和形象]
<代码>促销有一个
图像
<代码>产品具有图像的列表/集合。将来可能会有新的类,它们也有
图像
图像
的集合

我想将所有图像放在同一个图像表中
(例如::image\u table)
。这意味着
促销
的图像和
产品
中的图像集合都将进入同一个表中

例如,我不能在
Image
类中放置两个
@OneToMany/@ManyToOne
注释,因为在Image表
(例如::Image\u表)
中会有两个不同的外键
(促销和产品)。将来如果有更多的类具有image,那么我必须添加额外的
@OneToMany/@ManyToOne
注释

  • 有没有办法在Hibernate中映射此功能

  • 如果我的设计不好,在现实世界中,它们如何在同一个表中存储属于不同类的图像


  • 然后尝试使用单向映射

    e、 g。
    促销拥有形象产品拥有形象但没有反之亦然

    @Shantaram Tupe那么在形象方面,形象表会是什么样子?例如,我将有:[imageId,p_FK,filename,width,height]。p_FK列将同时包含促销ID和产品ID。正确吗?不,使用单向映射,在图像端它只包含[imageId、文件名、宽度、高度],您不能通过
    图像
    实体访问
    促销
    产品
    ,但您可以通过
    促销
    产品
    其他类
    ,使用特定实体的
    图像ID
    ,访问
    图像
    实体。。。