3

我现在可以使用类似的代码在带有标准 api 的 select 语句中创建新对象

CriteriaBuilder cb...
CriteriaQuery<Wrapper> q = cb.createQuery(Wrapper.class);
  Root<SuperClass> c = q.from(SuperClass.class);
  q.select(cb.construct(Wrapper.class,c.get("name")));

但我想知道是否可以使用标准 api 创建这样的查询

select new Wrapper(p.name, type(p)) FROM SuperClass p

提前致谢!

4

1 回答 1

0

我不知道我是否正确理解了您的问题,但是您可以使用 HQL 创建类似的东西,至少使用 hibernate。你可以在这里看到更多。

就像你展示的那样。来自 Hibernate HQL 文档:

select new Family(mother, mate, offspr)
    from DomesticCat as mother
    join mother.mate as mate
    left join mother.kittens as offspr

希望这可以帮助。

于 2013-01-14T13:20:11.960 回答