Pokud pro dotazování používáte Spring Data, v rámci výsledku dostanete root entitu (všechny její hodnoty). Pokud tedy budete mít následující entitu:
@Entity
@Table(name = "t_book")
@SequenceGenerator(initialValue = 100, name = "t_book_seq_gen", sequenceName = "t_book_seq")
class BookEntity (
@Id
@GeneratedValue(generator = "t_book_seq_gen", strategy = GenerationType.SEQUENCE)
var id: Long = 0L,
var author: String = "",
var publisher: String = "",
var title: String = "",
var foreword: String = "",
var numberOfPages: Int = 0,
var publishingYear: Int = 0
)
vždy získáte všechny hodnoty (id, author, publisher, title, foreword, numberOfPages, …), i když je nebudete vždy potřebovat. Pokud chcete použe některé hodnoty, je zde možnost tzv. projekce. Vytvoříte si rozhraní, které bude obsahovat jen to, co potřebujete. Např. budete chtít pouze titul knihy a počet stran.
Číst dál