在我的benutzer-entity
中,我有以下onetomany
关系:
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval=true)
@JoinColumn(name="BENUTZER_ID")
private List<Dokument> dokumente = new ArrayList<>();
在我的dokument-entity
中,我现在希望通过按哈希值
和外键(BenutzerID)
搜索来获得特定的dokument
-我尝试通过namednativeQuery
:
@NamedNativeQueries({
@NamedNativeQuery(
name="findDokumentByHashAndBenutzerID",
query="SELECT d.* FROM Dokument d "
+ "JOIN Benutzer b ON d.Benutzer_id = b.Id_Benutzer WHERE d.Benutzer_id = ? AND d.Hash = ?")
})
当我在数据库(H2)中使用这个查询时,它可以工作,但在Java中,我会遇到以下异常:
javax.Persistence.persistenceException:Exception[EclipseLink-4002](Eclipse Persistence Services-2.5.0.v20130507-3FAAC2B):org.Eclipse.Persistence.exceptions.databaseException内部异常:org.h2.jdbc.jdbcsqlException:SQL Befehl“FindDoKumentByHashandBenutzerid[]”中的语法Fehler;erwartet“from,{”SQL语句“findDokumentByHashAndBenutzerID[]”中语法错误;应为“from,{”;SQL语句:findDokumentByHashAndBenutzerID[42001-197]错误代码:42001调用:findDokumentByHashAndBenutzerID查询:ReadAllQuery(referenceClass=dokument SQL=“findDokumentByHashAndBenutzerID”)在org.eclipse.persistence.internal.jpa.getDetailedException(queryimpl.java:377)se.persistence.internal.jpa.queryimpl.getSingleresult(queryimpl.java:516)在org.eclipse.persistence.internal.jpa.ejbqueryimpl.getSingleresult(ejbqueryimpl.java:400)在ch.insidebfh.persistence.repository.repository.findbyhash(repository.java:91)在ch.insidebfh.application.service.servicehelper.findbyhash(来源)在ch.insidebfh.application.demo.sandbox$1.run(sandbox.javA:91)在java.util.concurrent.threadpoolexecutor.runworker(未知源)在java.util.concurrent.threadpoolexecutor$worker.run(未知源)在java.lang.thread.run(未知源)由:Exception[EclipseLink-4002](Eclipse Persistence Services-2.5.0.v20130507-3FAAC2b):org.Eclipse.Persistence.exceptions.databaseException引起
根据这个例外,我猜你会打电话给
entityManager.createQuery("findDokumentByHashAndBenutzerID");
而不是
entityManager.createNamedQuery("findDokumentByHashAndBenutzerID");
问题内容: 我正在为我的应用程序使用Hibernate 3.2.5。 我有一张桌子和一张桌子。 部门java 员工.java HBM映射文件 以下是本机SQL的代码: 我得到了例外: 当我直接在数据库中运行查询时,我会得到正确的输出,但是在hibernate状态下,它给出的是。我已经确认列名仅是正确的。 请让我知道如何解决此问题。 问题答案: 您的映射中包含以下内容: 但是您的sql 和之间没有这
我读过这段代码,其中接口抛出异常,但实现它的类没有抛出异常或捕获异常,这是为什么?它在java中是合法的还是安全的?
我必须用内部连接执行这个JPA查询。 问题是当为空。在获取列表并迭代之前,我需要检查是否为空。 以我的编码结构,不可能在其他地方这样做。但是我必须在JPA查询本身内完成。 请帮帮忙。
抛出异常的行为是否可能抛出不同的异常? 为了抛出异常,必须(可选地)分配新对象,并调用其构造函数(隐式调用fillinstacktrace)。在某些情况下,听起来像addSupressed也被称为。那么如果没有足够的内存会发生什么呢?JVM是否需要预分配内置异常?例如,(1/0)会抛出OutOfMemoryError而不是ArithmeticException吗? 此外,构造函数是一个方法调用,因
这是可能的在Java抛出任何异常,即使它是刚刚宣布抛出的时刻,下面的例子: 请分享你对这种方法的好坏的看法。 同样的问题是扩展RuntimeException(这不是抽象的)并立即扔掉它。
问题内容: 我目前正在使用play2框架。 我有几个正在抛出的类,但是play2s全局处理程序使用throwable而不是异常。 例如我的一门课是抛出一个。我是否可以检查可抛物体(如果是)? 问题答案: 您可以使用它来检查它是否存在。 例: 假设是参考。