1
让我定义以下实体,例如:JPA中的两个实体可以有多个关系吗?
@Entity
public class Box{
@ManyToOne
Apple apple;
@ManyToOne
Orange orange;
}
@Entity
public class Apple {
@OneToMany
List<Box> boxes;
@ManyToMany
List<Orange> OrangeBoxMates;
}
@Entity
public class Orange {
@OneToMany
List<Box> boxes;
@ManyToMany
List<Apple> appleBoxMates;
}
忽视的事实是许多批注已被省略。我只是用这个代码作为例子。
现在我想创建一个额外的苹果和桔子之间的单向关系。
@Entity
public class Apple {
@OneToMany
List<Box> boxes;
@ManyToMany
List<Orange> OrangeBoxMates;
@ManyToMany
List<Orange> OrangeFriends;
}
@Entity
public class Orange {
@OneToMany
List<Box> boxes;
@ManyToMany
List<Apple> appleBoxMates;
}
有没有什么理由我不能做这样的事情?
不,没有理由。只要使用适当的注释和属性,一切都会好起来的。 – 2012-01-18 11:00:43
只是为了确认,我不能使用连接列的默认名称,因为默认名称是类名,并且会有冲突。所以,如果我使连接列名称显式(和不同的lol),一切都会好吗? – b3bop 2012-01-18 16:39:36
是的,一切都会好起来的。 – 2012-01-18 16:40:51