나는 더비 데이터베이스가있는 응용 프로그램을 가지고 있으며 지속성 API로 eclipselink를 사용합니다. 팀 목록이있는 GUI가 있다고 가정 해보십시오. 각 팀에는 다수의 선수가 있습니다.지연로드 된 엔티티를 "언로드"
@OneToMany(mappedBy = "team", fetch = FetchType.LAZY, cascade = { CascadeType.ALL })
private List<player> players = new ArrayList<player>():
이 같은 플레이어 클래스 : 팀 클래스의 관계는 다음과 같습니다
@ManyToOne(targetEntity = Team.class)
@JoinColumn(name = "teamID", nullable = false, referencedColumnName = "ID")
private Team team;
그래서 나는 지금 내 응용 프로그램을 시작하고 기존의 모든 팀과 목록을 채우는 :
을public List<Team> getTeams()
{
TypedQuery<Team> query = em.createQuery("SELECT t FROM Team t", Team.class);
List<Team> teams = query.getResultList();
return teams;
}
지금까지 모든 작업이 진행 중입니다. 플레이어가 아닌 팀 만로드됩니다. 이제 팀을 선택하고 명령을 실행하여 팀 플레이어와 테이블을 엽니 다. 테이블은 다음과 같이 채워집니다 :
이제이 팀의 모든 플레이어가로드됩니다. 하지만 테이블을 닫은 후에도로드 된 상태로 남아 있지만 메모리에 남아 있지 않도록 다시로드하려고합니다. 어떻게해야합니까?
감사합니다. 그렇게 할 것입니다! –