我有两个表: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;
}
this文章的答案是有关使用ORM的,它不适合我
PS:对不起,我的英语。
答案 0 :(得分:1)
除非您对关系本身有特定的属性,否则将没有类来映射关系。
还必须确定关联用户练习的可导航性。是双向还是单向的?即您是否需要查找给定用户的所有练习,或给定用户的所有用户,还是两者都找到?
在第一种情况下,您将拥有:
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);