我可以像这样使用Hibernate吗?
public class Employee{
private String name;
private String age;
//public getters and setters
}
public class EmployeeDao{
public List<Employee> getByFilter(Employee filter){
//what whould I write here?
}
}
public class Test{
public static void main(String[] args){
Employee employeeFilter = new Employee();
employeeFilter.setAge(15);
List<Employee> employeesOf15 = new EmployeeDao().getByFilter(employeeFilter);
}
}
如果是,那么如何?
答案 0 :(得分:0)
是的,在您的getByFilter()
方法中,您可以编写一个简单的HQL或本机SQL查询来查找年龄等于过滤器年龄的所有员工,或者使用Hibernate's Criteria Queries,例如:
return getSession().createCriteria(Employee.class).add(Restrictions.eq("age", filter.getAge())).list();
向您的通用getByFilter()
方法添加另一个参数可能是个好主意,这样您就可以按任何字段(名称,年龄等)指定过滤,然后相应地执行操作。