随着Hibernate 5.2.2中Criteria类中createCriteria()的弃用,它的许多相关函数无法再使用。我找到了标准的另一种用法。createAlias(String,String)和从以下链接添加限制在Hibernate 5中弃用了createCriteria方法,但我找不到如何在JPA criteria中替换criteria中可用的以下函数:
criteria.setProjection(Projections.projectionList()
.add(Projections.distinct(Projections.property("student.id")), "id")
.add(Projections.property("student.name"), "name"));
criteria.addOrder(Order.asc("student.name"));
if (limit != null)
criteria.setMaxResults(limit);
if (offset != null)
criteria.setFirstResult(offset);
criteria.setResultTransformer(new AliasToBeanResultTransformer(Student.class));
请给我提供一种使用JPA标准API编写相同代码的替代方法。
到目前为止,我找到了以下替代方法:
CriteriaBuilder builder = sessionFactory.getCriteriaBuilder();
CriteriaQuery<Student> criteriaQuery = builder.createQuery(Student.class);
//Perform the required join
criteriaQuery.multiselect(student.get("id").alias("id"),student.get("name").alias("name")).distinct(true);
criteriaQuery.orderBy(builder.asc(student.get("name")));
TypedQuery typedQuery = entityManager.createQuery(criteriaQuery);
if (limit != null)
typedQuery.setMaxResults(limit);
if (offset != null)
typedQuery.setFirstResult(offset);
List<Student> resultList = typedQuery.getResultList();
我的问题用上述方法解决了。JPA标准不要求别名为BeanResultTransformer()。它将自己转换为所需的bean。
问题内容: 我知道的指示: JPA持久性机制读取“ persistence.xml”文件,查找名为“ persistence-unit- name”的持久性单元,并基于该持久性单元构造EntityManagerFactory。 我的问题是,如何强制JPA 使用不同于“ persistence.xml”的文件 ?例如“ persistence-test.xml”。 问题答案: 尽管单个JPA提供程序
问题内容: 在hibernate状态下使用@formula是否有其他解决方案?我需要通过jpa使用它,例如: 问题答案: 您可以结合使用注释和一种方法
问题内容: 我的iOS应用程序中有.html文件。HTML文件具有少量带有onClick方法的div块。当我点击这些块时,我会在Web视图中调用一些javascript代码,但我还需要在源代码中了解这些事件。 例如,当我点击Web元素并调用onClick时,我需要在代码中调用某些方法,例如 我可以做这个东西吗?谢谢。 问题答案: 在JS中调用Objective-C的方法: 下面的网址有助于做到这一
我一直在通过Netbeans使用CodeNameOne设计一个应用程序,并遇到了一些问题,特别是“找不到符号”编译错误。经过进一步的研究,我发现这是由于CNO不支持某些库/杂项。 我想知道是否有其他方法可以使用以下库/执行任务: (从文件读取)导入java.io.file;符号:类文件位置:package java.io (抛出FileNotFoundException)导入java.io.Fil
问题内容: 我正在尝试从 The Go Programming Language Phrasebook ( 《 Go编程语言短语》)中获取 一个示例,该书于2012年基于Go 1.0编写。该示例使用的包现已变为。我目前正在使用Go 1.2.1,并且下面的代码无法按原样编译,因为该软件包现已失效: 我仍然是GoLang的新手,因此我不确定如何将较早的实验软件包集成到标准库中。我做了一些研究,发现现在
问题内容: PHP_excel是否有其他选择可以以自定义格式“导出到XLSX / XLS”文件? 问题答案: 我编写了一个非常简单的类,用于导出到“ Excel XML”(又名SpreadsheetML)。对于最终用户而言,它不如XSLX方便(取决于文件扩展名和Excel版本,他们可能会收到警告消息),但使用起来比XLS或XLSX容易得多。