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

HibernateDaoSupport 获取session 有关问题

2012-05-22 
HibernateDaoSupport 获取session问题ssh 框架 反复运行这个DAO后 显示 Cannot get a connection, pool er

HibernateDaoSupport 获取session 问题
ssh 框架 反复运行这个DAO后 显示 Cannot get a connection, pool error Timeout waiting for idle object

Java code
public class DeviceAlarmDAOImpl extends HibernateDaoSupport implements        DeviceAlarmDAO {    private HibernateTemplate ht;    public void init() {        ht = getHibernateTemplate();    }。。。。。。。Session session = this.getSession();String hql = "select count(alarmID) from DeviceAlarmInfo";int total = 0;   try {    Query query = session.createQuery(hql);    total = ((Number) query.uniqueResult()).intValue();    return Integer.valueOf(total);   } catch (Exception e) {    e.printStackTrace();    return 0;   } finally {    session.close();   }


maxActive maxIdle maxWait 设置没问题 因为运行其他DAO没错误

[解决办法]
用HQL试试
[解决办法]
查查是不是有地方,没有进行 session.close();
[解决办法]
数据库服务没启吧?或者检查你的sessionFactory的配置。
[解决办法]
session.close()是不对的,应该去掉。比如dao.update();dao.save();是紧邻的两句。那你是不是close了两次呢?close操作应该放在service层。

热点排行