39 lines
1.1 KiB
Java
Executable File
39 lines
1.1 KiB
Java
Executable File
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;
|
|
}
|
|
}
|