今天在使用hibernate+springmvc框架,做一个查询时出现了一个错误,sql语句大体为:
select count(id) from address where agency_id in (select id from agency where pids like '%,42,' or id=42) and shflag=0 order by id desc
在mysql查询中能够正常运行,在控制台中报错
java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: agency is not mapped [select c from com.demi.cms.model.Address c where agency_id in (select id from agency where pids like '%,42,' or id=42) and shflag=0 order by id desc] at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert AbstractEntityManagerImpl.java:1750) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1677) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1683) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:331) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source)~~~~~~
提示我们是查询语法错误,后来仔细一想hibernate对大小写敏感,将语句重新更改了一下:
select count(id) from Address where agency_id in (select id from Agency where pids like '%,42,' or id=42) and shflag=0 order by id desc,问题解决!
相关推荐
### WebLogic 12下org.hibernate.hql.ast.HqlToken冲突解决方案 在使用WebLogic 12部署应用程序时,可能会遇到与`org.hibernate.hql.ast.HqlToken`相关的异常问题。这种异常通常与Hibernate版本之间的不兼容性有关...
在本问题中,我们遇到了一个特定的错误,即“weblogic10.3 org.hibernate.hql.ast.HqlToken报错”,这涉及到Hibernate ORM框架和其在WebLogic上的运行。让我们深入探讨这个问题,以及可能的解决方案。 首先,`org....
标题 "org.hibernate.ejb-library-3.4.0.GA-A" 指示这是一个与Hibernate相关的库,特别针对EJB(Enterprise JavaBeans)版本3.4.0,并且是为OSGi环境优化的。描述中提到它适用于在Virgo Jetty服务器上进行Web开发,...
8. **查询**: Hibernate支持HQL(Hibernate Query Language)和 Criteria API,它们提供了面向对象的查询方式。另外,还可以使用原生的SQL查询并通过`@NamedNativeQuery`进行配置。 在这个"Spring4Hibernate5MVC...
5. **查询(Querying)**:Hibernate提供HQL(Hibernate Query Language)和Criteria API进行数据查询。HQL是一种面向对象的查询语言,而Criteria API更接近于面向对象的编程方式。 **使用流程** 1. **配置**:...
1. org.hibernate.Query Interface:用于向数据库查询对象,封装了 HQL 查询语句,和 SQL 很类似,唯一的区别在于 HQL 是面向对象的。 2. org.hibernate.Criteria Interface:完全封装了基于字符串形式的查询语句,...
weblogic10 与hibernate冲突解决方案 错误如下:org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken linux windows 环境解决方案全解 Linux 启动脚本添加如下: export USER_...
#hibernate.query.factory_class org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory ################# ### Platforms ### ################# ## JNDI Datasource #hibernate.connection....
Query 封装了 HQL(Hibernate Query Language)查询语句,和 SQL 很类似,唯一的区别在于 HQL 是面向对象的。 2. org.hibernate.Criteria Interface:完全封装了基于字符串形式的查询语句,更加面向对象,擅长执行...
对hibernate的hql进行了详尽的讲解
本篇文档将深入探讨Hibernate中的HQL(Hibernate Query Language),一种面向对象的查询语言,它提供了与SQL类似的语法,但更贴近于面向对象的思维模式,使得开发者可以更加便捷地进行数据查询。 一、HQL简介 HQL是...
在Java世界中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以更专注于业务逻辑而不是底层的数据访问细节。本文将深入探讨Hibernate配置文件,这是使用Hibernate进行数据库...
例如,`QueryTranslator`负责将HQL(Hibernate查询语言)转化为SQL,而`TransactionCoordinator`则处理事务相关逻辑。 7. **org.hibernate.event** 包:事件处理相关类,如监听器接口和实现,允许开发者在特定的...
7. HQL和Criteria API:Hibernate Query Language(HQL)是Hibernate特有的面向对象的查询语言,类似于SQL,但操作的是对象而非表格。Criteria API是一种类型安全的API,可以动态构建查询,避免SQL注入风险。 8. ...
这份笔记涵盖了Hibernate的核心概念、配置、实体管理、会话管理、查询语言(HQL)等多个方面,旨在帮助初学者快速理解和掌握Hibernate的使用。 1. Hibernate核心概念:Hibernate是一个开源的ORM框架,它提供了一种...
源码中,`org.hibernate.Session`接口和其实现类`org.hibernate.internal.SessionImpl`是关键。 3. **查询语言(HQL)与Criteria API**:Hibernate提供了HQL(Hibernate Query Language),它是SQL的面向对象版本。...
重点分析`org.hibernate.hql.ast.ASTQueryTranslatorFactory`和`org.hibernate.criterion.Criterion`接口。 3. **实体管理与状态转换**:实体管理是Hibernate的核心功能之一,包括持久化、加载、更新和删除等操作。...
`org.hibernate.hql`和`org.hibernate.hql.ast`包包含了HQL的解析和执行逻辑。另外,Criteria API提供了一种更加灵活的查询方式,允许在运行时动态构造查询条件。 6. **事件与拦截器:** - Hibernate的`org....
`org.hibernate.hql`包包含了HQL解析器和执行器,可以用于执行复杂的查询。 5. **事务管理**:在`org.hibernate.transaction`包中,Hibernate提供了与各种事务系统的接口,包括JTA(Java Transaction API)和JDBC...