继承搜索让我们假设有下面的实体:春数据 - 通过类型
@Entity
@DiscriminatorColumn(name="Type")
@Inheritance(strategy=InheritanceType.Joined)
public abstract class Employee extends Persistable<Long> {
private String firstName;
private String lastName;
//getters, setters
}
@Entity
@DiscriminatorValue("S")
public class SalariedEmployee extends Employee {
//various fields
}
@Entity
@DiscriminatorValue("C")
public class ContractEmployee extends Employee {
//various fields
}
@Entity
@DiscriminatorValue("H")
public class HourlyEmployee extends Employee {
//various fields
}
而一个Repository
public interface EmployeeRepository implements PagingAndSortingRepository<Employee, Long> {
}
如何搜索做一个查询让说“给我所有的员工那不是HourlyEmployees“。很明显,我会要求这些被分页/排序,所以我可能无法做到findAll();
,如果我没有弄错,只是从Page集合中删除条目。
如果你想针对特定类型然后为该类型创建一个存储库。其他任何东西都是黑客行为,特别是如果您开始通过该类型的字段进行查询。 – zeroflagL 2014-09-26 18:13:25