首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

spring的hibernate查询日期的语句,该如何解决

2012-02-02 
spring的hibernate查询日期的语句select to_date(2011-11-28,yyyy-mm-dd)-to_date(2011-11-01,yyyy

spring的hibernate查询日期的语句

select to_date('2011-11-28','yyyy-mm-dd')-to_date('2011-11-01','yyyy-mm-dd') from dual
这句sql语句是从oracle数据库中查询两个日期之间的天数,这句在oracle中运行正常,返回一个整数。可是放在dao持久层查询时不能运行。会说找不到dual,可是应该怎样写sql语句呢。

Java code
public int findBeginEndNum(String begintime,String endtime) {    try{String sql="select to_date('"+endtime+"','yyyy-mm-dd')-to_date('"+begintime+"','yyyy-mm-dd') from dual";        System.out.println(sql);        this.getHibernateTemplate().find(sql); 【运行到这里就报错】        //Object obj=this.getHibernateTemplate().find(sql).get(0);        //if(obj!=null){        //    return Integer.parseInt(obj.toString());        //}    }catch(Exception e){        e.printStackTrace();        }    return 0;}    




[解决办法]
我也没试过这个,给你点建议
this.getHibernateTemplate().find(sql); //先试试这句能否运行其他SQL,

或者使用Hibernate中其他运行SQL的方法试试。
[解决办法]
this.getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery(sql);
[解决办法]
探讨
String sql="select to_date('"+endtime+"','yyyy-mm-dd')-to_date('"+begintime+"','yyyy-mm-dd') from dual

热点排行