HIbernate中通过Query.setDate()查询得到的数据有问题,具体如下:
Query query = session.createQuery("from Member where createDate >=?");
query.setDate(0, new Date());
查询得到结果不到正确的数据,在数据库中通过sql语句查询:select * from memberwhere create_date>='2007-07-13 19:56:00' 能得到正确的结果;
因为Query的setDate()方法赋值的时候,HIbernate默认把赋值日期后面的时分秒截取掉,只留下年月日,如果只是通过">" or "<" 进行日期比较完全Okey,但是带上"="就不行了,有三种方法可以解决这个问题。
其一、通过setCalendar()赋值
其二、通过setTimestamp()赋值
其三、拼接字符串。String hql="from Member where createDate ='"+(new Date())+"'";
分享到:
相关推荐
### HIBERNATE_QUERY知识点详解 #### 一、概述 Hibernate作为一款强大的对象关系映射(ORM)框架,为Java开发者提供了一套高效且简洁的方式来处理数据库操作。它支持多种查询方式,包括面向对象的查询语言(HQL)...
创建一个名为`HibernateDemo`的Java工程,然后导入Hibernate的核心库,包括`hibernate3.jar`以及`lib`目录下的所有jar包。如果使用最新版本的Hibernate,可能需要7个基本的jar包。同时,由于涉及到数据库操作,还...
query.setDate("startDate", startDate); // 返回结果集 List<Person> persons = query.list(); // 遍历结果集 for (Person person : persons) { System.out.println(person.getName()); } // 提交事务 ...
到编写本文时为止,这些是Hibernate运行所需要的最小库文件集合(注意我们也拷贝了 Hibernate3.jar,这个是最主要的文件)。你正使用的Hibernate版本可能需要比这更多或少一些的库文件。请参见发布包中的lib/目录下...
t.setDate(new Date()); Configuration cfg = new AnnotationConfiguration(); SessionFactory sf = cfg.configure().buildSessionFactory(); Session session = sf.getCurrentSession(); session.begin...
- 导入Hibernate的jar包,确保导入`lib\required`目录下的所有jar包以及核心的`hibernate3.jar`。 - 如果使用的是最新版本的Hibernate,需要导入的基础jar包包括7个,具体可以从`hibernate-distribution-3.3.2.GA....
2. 导入Hibernate的核心库`hibernate3.jar`以及lib目录下的所有jar包。对于较新的Hibernate版本,可能需要更多相关的jar包,如从`hibernate-distribution-3.3.2.GA.zip`中获取的7个基本jar包。 3. 由于涉及MySQL...
3. Hibernate的Delete操作: 删除数据是通过调用Session的delete()方法实现的,需要传入待删除对象的实例,通常这个实例是通过其id获取的。在示例中,直接传入了一个id为8的新News对象,开始事务,调用delete(),...
【一个Hibernate的简单教程】 在Java开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者将数据库操作转化为对Java对象的操作,极大地简化了数据持久化的复杂性。本教程旨在提供一个无需Web...
3. **缓存机制**:合理利用 Hibernate 提供的一级缓存和二级缓存机制,可以避免重复查询相同数据。 4. **分页查询**:在处理大量数据时,使用分页查询可以避免一次性加载过多数据到内存中。 5. **延迟加载**:对于...
注意文件的位置 <br>3. tomcat中配jdbc就不用说了, <br> <br>4. Event.java 文件 <br>package events; <br>import java.util.Date; <br>public class Event { private Long id; <br...
javascript Date.setDate()方法按照本地时间设置月份的某一天,在指定的日期。 语法 Date.setDate( dayValue ) 下面是参数的详细信息: dayValue : 从1到31的整数,代表一个月份中某一天。 返回值: NA 例子: ...
但是涉及到每个月天数的判断,如果是2月份的话,还要涉及到闰年的判断,有些复杂,应用过程中总是出现问题,于是查了下资料,以在某个日期上加减天数来说,其实只要调用Date对象的setDate()函数就可以了,具体方法...
HQL,全称为Hibernate Query Language,是Hibernate框架提供的一种面向对象的查询语言。与SQL(Structured Query Language)不同,HQL是专为ORM(Object-Relational Mapping)设计的,它允许开发者以类和对象的方式...