当前位置: 首页 > 知识库问答 >
问题:

Restrictions.sqlRestriction异常与Oracle一起Hibernate

艾飞宇
2023-03-14

我在使用hibernate和Oracle db执行限制条件时遇到问题。

简化的标准是:criteria1.add(Restrictions.sql限制("{宠物}. givenName='韦恩')"));

这给了我NullPointerExceltion。我明白,我需要把setEscape处理(假)为了忽略括号{}在{宠物},但我不知道如何做到这一点,因为我正在使用标准。

如果有人能帮助我,我会很高兴的。

这是生成的异常:

1 ERROR http-8080-2 lists.SimplePagingList - Could not load current list

java.lang.oracle.jdbc.driver.T4C8Oall.getNumRow(T4C8Oall.java:876)的NullPointerExcture在oracle.jdbc.driver.T4CPREaredStatement.executeoracle.jdbc.driver.OracleStatement.execute可能描述(OracleStatement.java:1039)在oracle.jdbc.driver.T4C准备tatement.execute可能描述(T4C准备tatement.java:850)在oracle.jdbc.driver.OracleStatement.doExecteAnd Timeout(OracleStatement.java:1134)在oracle.jdbc.driver.OraclePREaredStatement.execute在org. apache. tomcat. dbcp. dbcp. dbcp.内部(OraclePrearedStatement.java:3339)在oracle.jdbc.driver.OraclePREaredState. ackteQuery(OraclePREaredState. java: 3384)。在org. hibernate. jdbc. jdbc中的委托准备声明。getResultSet(AbstractBatcher. java: 186)在org. hibernate. loader。loader. getResultSet(Loader. java: 1787)at org. hibernate. loader。Loader. doQuery(Loader. java: 674)at org. hibernate. loader。在org. hibernate. loader上的Loader. doQueryAndIdazeNonLazyCollection(Loader. java: 236)。Loader. doList(Loader. java: 2213)在org. hibernate. loader。在org. hibernate. loader. listIgnoreQueryCache(Loader. java: 2104)。Loader. list(Loader. java: 2099)at org. hibernate. loader.准则。CriteriaLoader. list(CriteriaLoader. java: 94)在org. hibernate. implified。SessionImp. list(SessionInp. java: 1569)在org. hibernate. implified。CriteriaImp. list(CriteriaInp. java: 283)

共有1个答案

甘学潞
2023-03-14

我设法解决了这个问题。

第一个问题是{pets}我只能使用{alias}。

第二个问题是,我创建的标准包括:

Criteria criteria1 = criteriaOrg.**createAlias**(...)

我已将其更改为:

Criteria criteria1 = criteriaOrg.**createCriteria**(...)
 类似资料:
  • 我有一个ControllerAdvice类,它处理一组异常。我们还有其他一些例外情况,这些例外情况用注释进行了注释。为了结合这两种方法,我们使用博客文章中描述的技术:http://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc,即在ControllerAdvice中,我们以以下方式处理一般异常: 它就像一个符咒,但是,使用此技术

  • 问题内容: 异常存储在哪里?堆,堆。如何为异常分配和释放内存?现在,如果您有多个需要处理的异常,是否创建了所有这些异常的对象? 问题答案: 我假设为异常分配的内存分配方式与所有其他对象(在堆上)分配方式相同。 这曾经是个问题,因为您不能为OutOfMemoryError分配内存,这就是直到Java 1.6之前 才没有堆栈跟踪的原因。现在,它们也为stacktrace预分配了空间。 如果您想知道在抛

  • 我对这个可完成的未来概念很陌生。我使用Spring的异步注释,为此我为执行器和异常处理程序添加了一个文件配置,如下所示: 然后我有一个方法,我想异步运行并返回CompletableFuture: 现在,如果在上述方法调用中发生了一些异常,那么我应该如何处理该异常? 注意:如果我不返回CompletableFuture并返回vo,它将转到异常处理程序AsyncUncaughtExceptionHan

  • 我想过滤所有值满足特定条件的窗口,然后打印出过滤后的通量: 然而,结果不是4、2、6,而是 如果我尝试相同但不使用过滤器,当它正常工作时: 如果我在没有平面图的情况下尝试,也不会引发异常: 然而,这两种方法显然都没有产生预期的结果。但是,当和平面图时,在组合滤波器时似乎存在问题! 我的第一个例子有什么不对?另一个订阅者在哪里? 如何获取值?

  • 我似乎无法在代码中使用try catch。我对此很陌生,我必须使用它。我需要用户输入输入,然后我需要检查输入,可能是在一个循环中,是否有错误,以便被异常捕获。 -通过确保用户输入一个正整数表示英尺,输入一个非负十进制表示英寸,输入一个正十进制表示体重来执行输入验证。 -另外,将输入的值的范围限制为每个值的逻辑范围。例如,当输入以英尺为单位的高度时,一个相当合理的范围将包括4-7之间的值。以类似的方

  • JMockit版本:1.47 Jupiter JUNIT版本:5.3.2 IntelliJ版本:2019.1 Ultimate 有谁能帮忙吗。