Я новичок в JPA, не говоря уже о JPA в Play, поэтому мне интересно, как лучше всего сохранить мои объекты с отношением @ManyToOne
к нескольким классам.
Класс UserJump определяется следующим образом:
@Entity
public class UserJump extends Model{
@ManyToOne
public User user;
@ManyToOne
public JumpSession jumpSession;
public String parachuteUID;
public String notes;
public int status;
}
Отношение к UserJump определяется внутри JumpSession:
@OneToMany(mappedBy="jumpSession")
public List<UserJump> userJumps;
Аналогично в классе User:
@OneToMany(mappedBy="user")
public List<UserJump> userJumps;
Вот как я сейчас сохраняю вещи:
JumpSession jumpSession = new JumpSession();
//...Code here to fill in jumpSession...
jumpSession.save();
UserJump userJump;
for(String jumperUID : jumpers)
{
userJump = new UserJump();
userJump.jumpSession = jumpSession;
userJump.user = User.findById(jumperUID);
userJump.status = 1;
userJump.save();
}
Мне кажется, что должен быть способ сохранить эти объекты UserJump в списке с именем userJumps, а затем выполнить jumpSession.userJumps = userJumps
, затем jumpSession.save()
, и он должен сохранить все объекты UserJump. Есть ли способ сделать это? И каким образом это лучший способ сделать это?