Cześć,
Dopiero wchodzę w temat Jason + Spring, stąd noobowe pytanie/problem: chcę wyciągnąć dany post użytkownika, a mianowicie tylko id i treść tegoż posta. W obsłudze po stronie jQuery dałem wyświetlania tylko tych pól i spoko, ale na konsoli aplikacji widzę, że *wypychany *jest komplet danych dla obu encji biorących w tym udział czyli dla encji Post i Autor, czyli wszystkie pola z bazy wraz z wartościami. To chyba nie powinno tak działać, czy się mylę?
- Rejestracja:prawie 10 lat
- Ostatnio:ponad 7 lat
- Postów:53
0
1
I tak i nie. Do tego służą widoki (adnotacja @JsonView
) na polach encji. Jeżeli zaczniesz np. nullować niechciane pola to może okazać się, że usuwasz dane z bazy (bo całość ma transakcję i traktuje nullowanie jako update). Opisane co i jak https://spring.io/blog/2014/12/02/latest-jackson-integration-improvements-in-spring
Zobacz pozostałe 2 komentarze

Ręce opadają... Do view dostarczać obiekty powiązane z bazą danych, zamiast jednego pożądanego dostarczać całą listę i jeszcze przy wyświetlaniu przetwarzać je usuwając.

Wiem mi też opadły i się cieszyłem, że cycków nie mam bo by pewno do rąk dołączyły.
Ja bym prędzej zrobił POJO, które byłoby kontenerem dla obiektu (lub obiektów) encji, np Post, które zawierałoby tylko wybrane pola z jednej lub więcej encji.
- Rejestracja:ponad 8 lat
- Ostatnio:około 5 lat
- Postów:10
0
Dawno już nie korzystałem z ORM-a, ale z tego co pamiętam to chyba w tej sytuacji używałem adnotacji @JsonIgnore dla danego pola.
Możesz ewentualnie pokusić się jeszcze o jakieś NamedQuery, żeby zwracało Ci te konkretne pola. Koledzy poprawcie jeśli się mylę.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.