`

Hibernate中in expected错误的原因之一

阅读更多

今天在执行语句查询时发现怎么都执行不了,换数据库别的表可以执行,以为是数据库表生成时哪里出了问题,一遍又一遍的对映射文件,数据库表,就是没有想出到底哪儿错了,还删了表重新生成表和索引,都没有办法。在网上看了一下资料突然明白,在Spring中没有配置BO。真晕!

出现错误是:

执行查询的时候出了如下错误:
net.sf.hibernate.QueryException: in expected: t [from TbApplyNew t]
     at net.sf.hibernate.hql.FromParser.token(FromParser.java:102)
     at net.sf.hibernate.hql.ClauseParser.token(ClauseParser.java:87)
     at net.sf.hibernate.hql.PreprocessingParser.end(PreprocessingParser.java:139)
     at net.sf.hibernate.hql.ParserHelper.parse(ParserHelper.java:30)
     at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:146)
     at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:133)
     at net.sf.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:352)
     at net.sf.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:330)
     at net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1368)
     at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1332)
     at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:76)
     at com.ninetowns.ods.srvvervst.ServiceVersionVisitManager.getVisitSuRecords(ServiceVersionVisitManager.java:79)
     at com.ninetowns.ods.srvvervst.ServiceVersionVisitManagerTest.testGetVisitSuRecords(ServiceVersionVisitManagerTest.java:37)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     at java.lang.reflect.Method.invoke(Method.java:324)
     at junit.framework.TestCase.runTest(TestCase.java:154)
     at junit.framework.TestCase.runBare(TestCase.java:127)
     at junit.framework.TestResult$1.protect(TestResult.java:106)
     at junit.framework.TestResult.runProtected(TestResult.java:124)
     at junit.framework.TestResult.run(TestResult.java:109)
     at junit.framework.TestCase.run(TestCase.java:118)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
 
原因是使用了三层框架:struts+hibernate+spring,在spring配置文件中没有注入hibernate类对应的xml映射文件.
<bean id="hibernateMapping.strongbpm.bpmnew" class="com.strongit.finance.common.util.ListHelper">
     <property name="mappings">
      <list>
     <!-- 业务表配置文件在此注入 -->
    <value>com/strongit/strongbpm/bo/TbApplyNew.hbm.xml</value>
    <value>com/strongit/strongbpm/bo/TbApporeNew.hbm.xml</value>
   </list>
     </property>
    </bean>
如果没有使用spring,只是使用了hibernate那么则Hibernate类对应的xml映射文件中的表名和包、类没有修改过来,然后在hibernate.cfg.xml文件中添加对应的记录。

 

分享到:
评论

相关推荐

    hibernate和junit的jar

    **Hibernate ORM框架**是Java领域中最流行的对象关系映射(ORM)工具之一。它允许开发者使用面向对象的编程方式来操作数据库,而无需直接编写SQL语句。Hibernate 5.3.0.Final是该框架的一个稳定版本,包含了以下关键...

    expected time bounds for selection

    选择问题是指给定一个包含n个不同数值的集合X和一个整数i(1 ),找出集合X中的第i小元素。这里的第i小元素是指集合中恰好有i-1个比它小的元素的那个数,即10X是最小元素,而n0X是最大元素。 #### 算法介绍与理论...

    hibernate_reference.pdf

    This part delves deeper into mapping associations between entities in Hibernate, which is crucial for modeling complex relationships in your domain model. - **Mapping the Person Class**: Using a ...

    C++常见错误汇总.doc

    该错误是语法错误之一,出现该错误的原因是switch语句的case分支中需要常量表达式。解决方法是检查switch语句的case分支,确保使用常量表达式。 8. error C2065: 'IDD_MYDIALOG' : undeclared identifier 该错误是...

    hibernate 单元测试批处理代码

    在IT行业中,Hibernate是一个强大的Java持久化框架,它简化了与关系型数据库的交互,而单元测试则是确保代码质量的重要工具。在这个“hibernate 单元测试批处理代码”项目中,我们将深入探讨如何使用Hibernate进行...

    SSH错误集中分析.

    然而,在实际开发和使用过程中,由于各种原因,开发者可能会遇到一系列的错误。以下是对这些常见错误的分析和解决方案: 一、关于错误“Error creating bean with name '*' defined in file [*.xml]” 这个错误...

    KEIL编译错误信息

    这些错误可能是由于语法不正确、内存不足、类型不匹配等原因导致的。了解并掌握这些错误信息对于解决编程问题至关重要。本文将详细介绍KEIL编译过程中常见的错误信息及其含义,帮助开发者更好地定位和解决问题。 ##...

    C++ 中 std::optional 与 std::expected 的深度辨析

    std::optional和std::expected都是 C++ 中非常有用的类型,它们在处理可能不存在的值以及错误情况时提供了更优雅和安全的方式。std::optional侧重于值的存在性,而std::expected侧重于错误信息的传递和处理。在实际...

    expected return

    本书《expected return》是一本专著,深入探讨了投资者在投资决策中非常重要的一个概念——预期收益率。预期收益率是基于投资者对未来投资回报的估计,这不仅包括对回报的量化预测,同时也涉及到对潜在风险的评估。...

    systematic error handling in c++

    安德烈·亚历山德雷斯库(Andrei Alexandrescu)在CppCon上的演讲主题是“systematic error handling in C++”,其中他提出了Expected和ScopeGuard的设计思想及其在实际应用中的实现。下面我们详细展开这些概念及其...

    hibernate4.2.4和junit4.0.rar

    在Java开发领域,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作,而JUnit则是进行单元测试的重要工具。本教程将围绕Hibernate 4.2.4版本与JUnit 4.0,探讨这两者如何协同工作,帮助...

    matlab常见错误总结

    在MATLAB编程过程中,会遇到各种各样的错误,这些错误可能是由于语法错误、类型不匹配、文件处理不当等原因造成的。以下是一些常见的MATLAB错误及其解决办法: 1. **内存溢出 (error1: Out of memory)**:当MATLAB...

    Keil+C编译器常见警告与错误信息的解决方法[归类].pdf

    * PARSING INVOKE-/#PRAGMA-LINE:当在命令行检测到参数计算或在一个 #pragma 中检测到参数计算时产生这样的错误。 * PARSING SOURCE -FILE/ ANALYZING DECLARATIONS:源文件包含太多的外部参考,减少源文件访问的...

    expected declaration(解决方案).md

    expected declaration(解决方案).md

    单片机程序错误代码及错误信息 错误释义

    在单片机程序开发过程中,开发者经常遇到各种编译错误,这些错误不仅会影响程序的编译成功与否,还可能直接影响到程序的功能实现与运行效率。因此,理解这些错误代码及其含义至关重要。下面将对给定的错误代码进行...

    C与C++常见错误中英文对照

    在C与C++编程语言的学习和实践中,遇到各种编译错误是在所难免的。下面将对给定文件中提到的一些常见的C与C++错误进行详细解释,并提供中英文对照,帮助开发者更好地理解并解决这些问题。 ### 1. fatal error C1003...

    编译运行时错误信息(英汉对照)

    在编程过程中,我们可能会遇到各种类型的错误,这些错误通常分为编译时错误和运行时错误。编译时错误是在程序编译阶段由编译器发现的错误,而运行时错误则是在程序执行过程中发生的错误。这里我们将重点讨论编译时...

    51单片机keil软件常见错误解决办法

    下面列出了Keil C51编译器中常见的错误及其可能的原因和解决方案: - **ERROR100: unprintable character 0x?? skipped** - **原因**:源文件中存在非法字符。 - **解决方法**:检查源文件,确保所有字符都是可...

    delphi问题常见解决

    1. **“statement expected but procedure found”**:这个错误提示表明在编译器尝试找到一个语句的地方,它却找到了一个过程(Procedure)的定义。这通常意味着你在某个过程或函数的定义中忘记了关闭的`end`关键字...

    turbopascal编译错误和运行错误信息中英文对照表

    以下是一份详尽的 Turbo Pascal 编译错误和运行错误信息的中英文对照表,涵盖了从基本语法错误到类型匹配问题的各种情况。 1. error 1: Out of memory - 内存溢出 当程序在运行时所需内存超过了系统可用内存时,会...

Global site tag (gtag.js) - Google Analytics