package com.ankurm.hibernatedemo.namedquery; import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.Table; import org.hibernate.annotations.NamedQuery; /** * Uses {@code org.hibernate.annotations.NamedQuery} (the Hibernate extension, not the JPA * standard one) specifically to exercise an extra it offers that JPA's does not: * {@code cacheable = true}. Docs: 14-named-queries.md, chapter "jakarta vs hibernate NamedQuery". */ @Entity @Table(name = "hib_extra_employee") @NamedQuery(name = "HibernateExtraEmployee.cacheableFindAll", query = "SELECT e FROM HibernateExtraEmployee e", cacheable = true) public class HibernateExtraEmployee { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; protected HibernateExtraEmployee() { } public HibernateExtraEmployee(String name) { this.name = name; } public Long getId() { return id; } }