Pamiętam, że istnieje adnotacja w JPA lub hibernacji, aby powiedzieć hibernacji, aby użyć metody getId/setId zamiast właściwości (dodawaliśmy adnotacje do naszych właściwości). Bez tego ustawienia getId powoduje trafienie w bazę danych i wypełnienie wszystkich pól tego obiektu, co nie jest tym, czego chcę. Czy ktoś wie, co to za adnotacja?hibernacja getId ładuje obiekt, mimo że jest leniwy
Przykład:
public void Project {
@Id
//Other annotation forcing hibernate to use property get/settter
public Long id;
}
public Ticket {
@ManyToOne(lazy=true)
public Project project;
}
tak, ticket.getProject.getId() powoduje uderzanie bazy danych, aby projekt, gdy id jest już w obiekcie proxy projektu hibernacji. Adnotacja naprawi to, co pamiętam.
dzięki, Dean
Połączyć tutaj z bardziej szczegółowymi; http://256.com/gray/docs/misc/hiber/napedy_pakiet_nazwa_zabytów.shtml –
Przepraszam, korzystałem z playframework i przyzwyczajasz się do tego po pewnym czasie. Sam nie lubię pól publicznych, ale po użyciu scala, chciałbym, żeby java miała coś takiego, żeby zredukować kodowanie. –
shoot, generuje ostrzeżenie dla każdej klasy, w której jest włączony, ponieważ specyfikacja JPA mówi, że adnotacja musi iść na metodę getId, ale przeniesienie tam powoduje tylko wyjątek i nie będzie działać wcale. Jak to właściwie robić w dzisiejszych czasach? (Używałem tego na polu, ale mogło to być coś szczególnego dla hibernacji) ... dzięki. –