queryDSL如何与界面吗?(How queryDSL works with interface?

2019-10-19 00:37发布

我有一组类实现相同的接口。 例如:

public interface Employee{
    private String name;

    public void work();
    public String getName();
}

@PersistenceCapable(detachable = "true")
public class Accountant implements Employee{
}


@PersistenceCapable(detachable = "true")
public class Secretary implements Employee{
}

以及保持员工实现另一个类:

public class Department{
     private ArrayList<Employee> employees;

     public ArrayList<Employee> getEmployees();
}

我想处的列表中有一个名为“玛丽”员工。 我应该怎样把我的JDO查询? 我失去了一些注解的接口员工?

我怀疑所产生的Q类是不正确的。 我有

public final SimplePath<java.util.ArrayList<Employee>>

在所生成的Q类。 它不应该是ListPath而不是SimplePath

Answer 1:

有两个问题在这里

  • Employee不被识别为实体类型,因为它没有被标注
  • ArrayList不是Querydsl支持列表类型,只有集合接口支持

考虑注释Employee和使用List ,而不是ArrayList



文章来源: How queryDSL works with interface?