Skip to main content

How could I be so stupid using hibernate criteria with timestamp?

I needed to make a query to find all records valid today for columns with effectiveFrom and effectiveTo range
I spent a couple of hours trying to understand why

            criteria.add(Restrictions.ge("effectiveFrom",currentDate.getTime()));
            criteria.add(Restrictions.le("effectiveTo",currentDate.getTime()));

was giving no results.

After many trials and attempts with other criteria tricks, I remembered that hibernate is not comparting if  currentDate.getTime is greater than effectiveFrom, but if effectiveFrom is greater than currentDate.getTime
So correct sintax for it was the exact opposite

            criteria.add(Restrictions.le("effectiveFrom",currentDate.getTime()));
            criteria.add(Restrictions.ge("effectiveTo",currentDate.getTime()));

This one worked as it should 

Comments

Popular posts from this blog

Multiple controllers with Spring Boot

Remember, when you want to have multiple controllers with Spring Boot, you should always name them differently in the annotation, otherwise they will not work So these two together will NOT work (or just one of them will work) These two instead WILL work.

WASService.sh and ulimit.... a tricky combo

From version 7 onward, the Application Server scripts and configuration scripts have the good manner to set by themselves the right ulimit valu. So ulimit is now less a problem than it was before. The problem is that, sometime when dealing with linux services,things do not always get right. For example you get exceptions such as [11/14/13 12:06:15:483 CET] 00000066 exception     E com.ibm.ws.wim.adapter.ldap.LdapAdapter authenticateWithPassword                                  com.ibm.websphere.wim.exception.WIMSystemException: CWWIM4520E  The 'javax.naming.CommunicationException: ldapus.ldap.domain.com:389 [Root exception is java.net.SocketException: Too many open files]' naming exception occurred during processing. (In case you are asking, yes, network connections are counted as open files) That's why I strongly suggest to modify your /etc/security/limits.conf (on RedHat) bef...