1

我正在尝试从给定一些扩展名作为输入的表中匹配和提取一些员工实体,但是如果我像这样链接查询方法,我只能将结果转换为 Employee 对象:

Employee x = em.createQuery("select e from Employee e where e.extension= 89667",Employee.class).getSingleResult();

如果我尝试放置一个占位符,然后使用给定的扩展名调用 set Parameter 函数,我会得到一个对象数组,而不是我想要的 Employee 类,如下所示:

Query x = em.createQuery("select e from Employee e where e.extension=:ext", Employee.class);
    x.setParameter("ext",ext);
    Employee emp =  x.getSingleResult();

我希望能够像第一个示例中那样获取 Employee 对象作为结果,但是像第二个示例中那样动态设置 where 子句,不确定是否有一种简单的方法,我尝试将结果转换为 Employee 对象但是我得到一个转换错误,如果我要将生成的对象数组映射到一个新的 Employee 对象,它会在对象是映射实体的情况下变得复杂。

4

0 回答 0