用SQLQuery查询就没问题,如果是用下面这句就可以查询出数据
List sqlList = this.getSession().createSQLQuery("select * from test").list(); //下面这2句直接就不动了,没异常,也没错误出来。
同一个方法里面的getHibernateTemplate().save(T) 可以用, 就是查询不行
String hql =" from Test";
try{
list = (List) this.getHibernateTemplate().find(hql);
list = this.getSession().createQuery(hql).list();
}catch(Exception e){
System.out.println("error"+e.getMessage());
e.printStackTrace();
}System.out.println("run end...............");// 下面这句永远执行不到。
为什么有这么奇怪的事情,难道查询还有特别配置???
List sqlList = this.getSession().createSQLQuery("select * from test").list(); //下面这2句直接就不动了,没异常,也没错误出来。
同一个方法里面的getHibernateTemplate().save(T) 可以用, 就是查询不行
String hql =" from Test";
try{
list = (List) this.getHibernateTemplate().find(hql);
list = this.getSession().createQuery(hql).list();
}catch(Exception e){
System.out.println("error"+e.getMessage());
e.printStackTrace();
}System.out.println("run end...............");// 下面这句永远执行不到。
为什么有这么奇怪的事情,难道查询还有特别配置???
debug看看具体哪里有问题。
表肯定是没错的,
数据保存没问题
getHibernateTemplate().save(test);
执行到 下面的语句就停止了,等多久都不执行。 非常奇怪的问题,也没异常
list = (List) this.getHibernateTemplate().find(hql);
能运行到,然后 没有然后了
没异常,后面的语句也不会执行把hql语句贴出来,会不会是你把SQL语句当初HQL语句了。
list = this.getSession().createQuery(hql).list();spring 3吧?这个有问题的,SESSION要手工关闭哦。list = (List) getHibernateTemplate().find(hql);用这个
这个也不行,没反应。随便乱写一个hql语句也没异常出来。
好奇怪,为什么不执行。
加了个finally, finally里面的语句倒可以执行,然后就结束了,不往下走了
终于找到问题了。
加了个
catch (Throwable e1) {
e1.printStackTrace();
}
终于看到有异常了,NoClassDefFoundError: antlr/ANTLRException
原来是少了antlr 这个包。郁闷啊,原来cath excepiton 不能捕获所有的异常