Proceduce in SpringBoot and RepositoryCustom is the best way
0. Tạo Proceduce
1. Khai báo ở @Entity
Delimiter $$ Create proceduce 'get_all_employees'() Begin select * from employees; end
1. Khai báo ở @Entity
Entity
@Table(name = "employees")
@Data
@NamedStoredProcedureQueries({
@NamedStoredProcedureQuery(name = "getAllEmployees",
procedureName = "get_all_employees",
resultClasses = Employees.class)
})
public class Employees implements Serializable {
@Id
@Column(name = "employeeID")
private long employeeID;
@Column(name = "firstName")
private String firstName;
@Column(name = "lastName")
private String lastName;
@Column(name = "address")
private String address;
}
Và Call ở @Repository@Procedure(name = "getAllEmployees") List<Employees> getAllEmployees();2. Hoặc là Call ở Custom Repository
public interface EmployeeRepositoryCustom {
List<Employees> getAllEmployees();
}
public interface EmployeeRepository extends CrudRepository<Employees, Long>, EmployeeRepositoryCustom {
}
public class EmployeeRepositoryImpl implements EmployeeRepositoryCustom {
@PersistenceContext
private EntityManager em;
@Override
public List<Employees> getAllEmployees() {
StoredProcedureQuery findByYearProcedure =
em.createNamedStoredProcedureQuery("getAllEmployees");
return findByYearProcedure.getResultList();
}
}
Comments
Post a Comment