0
我是Java和Hibernate的新手,我试图在Hibernate中映射下面的场景(使用注释)。如何将两个外键映射映射到Hibernate中的同一主键列(一对一)?
我正在处理以下两个表(涉及一些ETL类型的任务)。
任务
| -TaskId
| -SourceDatabase(FK到数据库表)
| -TargetDatabase(FK到数据库表)
数据库
| -DatabaseId(PK)
| -TaskId(FK的任务表)
| - 其他数据库详细信息。
每个任务都有一个sourceDatabase和一个targetDatabase。另外每个数据库仅与有关,任务。 如何使用一对一映射在Hibernate中映射到此模型。
@Entity
public class Task implements Serializable
{
@Id
int taskId;
//How to map using one-to-one mapping??
Database sourceDB;
//how to map using one-to-one mapping??
Database targetDB;
}
@Entity
public class Database implements Serializable
{
@Id
int databaseId;
//How to map using one-to-one mapping??
Task task;
}
我已经从上面的代码示例中删除了所有不必要的代码。 在此先感谢!
谢谢Axtavt!我对@mappedby注解感到困惑。不确定何时需要@mappedby? – ajay 2011-04-23 11:49:34
@crazyfor:'mappedBy'用于链接相同双向关系的两侧。由于你的关系使用他们自己的外键,你有单独的单向关系,并且不需要'mappedBy'。 – axtavt 2011-04-25 08:42:46