Привет сообщество stackoverflow.
Я хочу знать, есть ли в OpenJPA возможность сначала проверить, существует ли объект в БД перед вставкой.
У меня есть два предложения:
imports...
@Entity(name="Player")
public class Player {
private long id;
private String nickName;
private Team team; /* A Player is on a Team */
@ManyToOne(cascade=CascadeType.PERSIST)
@JoinColumn(name = "team_id")
public Team getTeam() {
return team;
}
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
public long getId() {
return id;
}
/* more getters / setters ...*/
}
@Entity(name="Team")
public class Team {
private long id;
private String name;
private List<Player> players; /* A Team Has Players */
@OneToMany(mappedBy = "team", targetEntity = Player.class,
fetch = FetchType.EAGER, cascade = CascadeType.PERSIST)
public List<Player> getPlayers() {
return players;
}
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
public long getId() {
return id;
}
Если я хочу добавить нового игрока или команду, JPA сначала должна проверить, есть ли этот игрок или команда в базе данных.
Если да, то он должен использовать первичный / внешний ключ существующего устройства.
Возможно ли это? Или мне нужно написать собственный метод?
С наилучшими пожеланиями
Veote