我有两个表: User(id pk, name, ...) 和 Exercise(id pk, content, ...) ,它们具有多对多的关系。我创建了两个代表它的类。public class User{ private int id; private String name; ....}public class Exercise{ private int id; private String content; ....}所以,我的问题是如何在不使用任何 ORM 的情况下添加多对多关系(不要问我为什么我不能这样做)?创建新类 UserExercise 是否正常,例如:public class UserExercise{ private int id_user; private int id_exercise;}这篇文章的答案是关于使用ORM的,它不适合我PS:对不起我的英语。
1 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
除非您对关系本身有特定的属性,否则您将没有一个类来映射关系。
您还必须确定关联用户练习的可导航性。它是双向的还是单向的?即您是否需要查找给定用户的所有练习,或给定练习的所有用户,或两者兼而有之?
在第一种情况下,您将拥有:
public class User{
private int id;
private String name;
List<Exercise> exercises;
}
在第二种情况下:
public class Exercise{
private int id;
private String content;
private List<User> users;
}
在第三种情况下。
注意双向更难维护。你必须同时做:
user.getExercises().add(exercise);
exercise.getUsers().add(user);
添加回答
举报
0/150
提交
取消