`

hibernate hql new对象时如果包含Timestamp字段

 
阅读更多
我在编写hql语句时,报了一个错误org.hibernate.hql.internal.ast.QuerySyntaxException:: Unable to locate appropriate constructor on class ,但是的定位的大致原因是因为我写了一个Student类,对应的数据库的student表,表中有五个字段,id,name,gender,age,createTime,其中createTime比较特殊,是个Timestamp类型,然后我也写了个StudentDTO类,其中有三个参数的构造方法,id,name,createTime,最后我写的hql语句如下 :
select new StudentDTO(s.id,s.name,s.createTime) from Student s;
如果我把StudentDTO改为两个参数id,name就可以通过,看来问题出现在createTime上,查了资料,原来是Hibernate的hql在解析数据库中的timestamp类型时,解析成了Date类型。问题找到了,自然就可以解决了。
分享到:
评论

相关推荐

    hibernate使用中与各种数据库字段类型对应类型训练

    本训练主要关注在使用Hibernate时如何处理与各种数据库字段类型的映射,这对于理解和优化数据库交互至关重要。 首先,我们要理解Hibernate的核心概念——对象关系映射(ORM)。ORM允许我们将数据库表结构映射到Java...

    hibernate所用到HQL经典语句大全

    - 当使用`NEW`语法返回实体对象时,实体类`Cat`必须包含一个接受两个参数(`String name`, `Date createDate`)的公共构造方法。 - 查询结果将自动转换为对应的实体类对象。 #### 二、条件查询和运算符 **2.1 ...

    NHibernate hql 可用函数,函数大全

    ### NHibernate HQL 可用函数详解 #### 一、查询基本语法与示例 **1. 基本查询** - **语法**: `FROM <类名> [WHERE <条件>]` - **示例**: `FROM Category c WHERE c.name > 'c5'` **2. 排序查询** - **语法**: `...

    hibernate 和hibernate_annotations(中文API).pdf帮助文档

    在这个“hibernate 和hibernate_annotations(中文API)帮助文档”中,我们将深入探讨Hibernate的核心概念、特性以及如何使用Hibernate Annotations进行对象的持久化。 一、Hibernate核心概念 1. 实体(Entity):在...

    HQL常用函数

    HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者用类和属性名称来查询数据库,而不需要直接编写SQL语句。这大大简化了数据库操作的过程,并使得代码更加清晰易读。在本文中,我们将详细介绍...

    hibernate-3.2源码包

    同时,乐观锁和悲观锁机制也是并发控制的关键,如Version和Timestamp字段的处理。 通过深入学习Hibernate 3.2的源码,开发者不仅能掌握其工作原理,还能针对具体业务场景进行优化,提升应用性能。无论是对新手还是...

    Hibernate distribution and annotation

    4. **查询语言**: HQL(Hibernate Query Language)是Hibernate的SQL扩展,用于查询对象。另外,Criteria API提供了一种类型安全的、面向对象的查询方式。 5. **缓存**: Hibernate支持一级缓存(Session级别的...

    hibernate 2

    Hibernate是一个开源的对象关系映射(Object/Relational Mapping,简称ORM)框架,它对JDBC进行轻量级的对象封装,使得Java开发者可以使用面向对象的方法来操作数据库。Hibernate 2是这个框架的一个早期版本,虽然...

    hibernate-annotations-3.4.0.GA

    5. @Column:定义字段与表中列的对应关系,包括长度、精度、非空性等属性。 6. @ManyToOne、@OneToOne、@OneToMany、@ManyToMany:定义不同类型的关联关系,如一对一、一对多、多对多。 7. @JoinColumn:用于关联...

    hibernate-annotations.jar

    `jboss-LICENSE.txt`文件通常包含的是开源软件的许可证信息,对于`hibernate-annotations.jar`来说,这意味着它遵循的可能是Apache License 2.0、LGPL或其他开源许可,这意味着该库可以免费用于商业项目,但需要遵守...

    hibernate-common-annotations.jar

    Hibernate不仅提供了数据持久化的解决方案,还包含了查询语言HQL(Hibernate Query Language)以及 Criteria 查询等高级功能。 二、JPA与Hibernate注解 JPA是Java EE规范的一部分,它定义了一种标准接口,用于实现...

    hibernate应用包

    Hibernate是一款开源的对象关系映射(ORM)框架,它在Java开发中被广泛应用,极大地简化了数据库操作。在“hibernate应用包”中,我们通常会发现与Hibernate框架相关的各类库和配置文件,特别是关于注解(Annotation...

    HIBERNATE:Hibernate 学习一--注解方式自动建表

    - HQL(Hibernate Query Language)是Hibernate提供的面向对象的查询语言,类似SQL但操作对象而非记录。 - Criteria API提供了一种动态构建查询的方式,可以在运行时根据条件构造查询。 通过这些注解和配置,...

    hibernate-annotations-3.4.0.GA.rar

    - `CascadeType`: 如PERSIST、MERGE、REMOVE等,定义实体间操作的级联行为,如删除父对象时,是否同时删除子对象。 6. **懒加载与即时加载** - `@LazyCollection(LazyCollectionOption.EXTRA)`: 实现懒加载,只在...

    hibernate基础 注解开发 检索

    - **HQL (Hibernate Query Language)**:一种面向对象的查询语言,类似于SQL但更加面向对象。 - **QBC (Query By Criteria)**:基于标准的API提供了一种构建查询条件的方法。 - **本地SQL**:直接执行SQL语句,适用...

    hibernate3.3.zip

    get()和load()根据ID加载对象,find()执行HQL(Hibernate查询语言)查找。 5. Transaction管理: Transaction接口用于管理事务,begin()开始事务,commit()提交,rollback()回滚。事务的ACID特性在Hibernate中得到...

    Hibernate学习笔记

    - `Query`:用于执行HQL(Hibernate Query Language)查询,类似于SQL但面向对象。 关于Hibernate的`get()`和`load()`方法,两者都能通过ID查询对象,但`get()`会立即从数据库加载数据,而`load()`则采用延迟加载...

    hibernate_annotation中文版

    1. `@Temporal`:用于日期和时间类型的字段,可以指定存储类型(TIMESTAMP、DATE或TIME)。 2. `@Lob`:标记大对象(LOB)字段,如BLOB(二进制大对象)或CLOB(字符大对象)。 3. `@Transient`:用于标记不参与...

    Hibernate 注解配置

    - HQL(Hibernate Query Language)是Hibernate提供的面向对象的查询语言,类似SQL。 - Criteria API提供更动态的查询方式,可以通过构建Criteria对象进行复杂查询。 9. **性能优化** - 第二级缓存:通过`Cache`...

    Hibernate+中文文档

    10.1. Hibernate对象状态(object states) 10.2. 使对象持久化 10.3. 装载对象 10.4. 查询 10.4.1. 执行查询 10.4.2. 过滤集合 10.4.3. 条件查询(Criteria queries) 10.4.4. 使用原生SQL的查询 10.5. 修改...

Global site tag (gtag.js) - Google Analytics