ssh架构,tomcat启动后,一开始访问正常,可过一会一下子就访问不了了,就卡在那儿,我项目刚启动后,访问页面,在页面上进行几个操作,比如说我要翻下一页的数据,翻个四五下以后就卡在那儿了,真想不通了

解决方案 »

  1.   

    数据库连接使用后有没有及时的关闭。log有什么异常吗?
      

  2.   

    我是ssh架构,继承HibernateDaoSupport这个类的,我上代码,各位帮我看看这有问题没```一个公共的daopackage cn.test.dao;import java.io.Serializable;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Set;import org.hibernate.Query;
    import org.hibernate.Session;
    import org.hibernate.Transaction;
    import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
    import cn.test.entity.TBasicTd;
    import cn.test.entity.TBasicTdEx;public class CommonDAOImpl extends HibernateDaoSupport implements CommonDAO { public void delete(Object obj1) {
    super.getHibernateTemplate().delete(obj1);
    } public List getAllDataBySql(String sql) {
    Session session = super.getSession();
    List list = session.createSQLQuery(sql).list();
    return list;
    }
    public Object getSingleObject(String hql) {
    List list = super.getHibernateTemplate().find(hql);
    if (list != null && list.size() > 0) {
    return list.get(0);
    }
    return null;
    } public void insert(Object obj) {
    super.getHibernateTemplate().save(obj);
    } public void update(Object obj) {
    System.out.println("updata方法");
    Session session = getSession();
    Transaction transaction = session.beginTransaction();
    session.merge(obj);
    transaction.commit();
    session.close();
    } public void insert(TBasicTd tBasicTd, TBasicTdEx tBasicTdEx) {
    Session session = getSession();
    Transaction transaction = session.beginTransaction(); tBasicTdEx.setTBasicTd(tBasicTd);
    tBasicTd.getTBasicTdExes().add(tBasicTdEx);
    tBasicTd.setTBasicTdExes(tBasicTd.getTBasicTdExes());
    session.save(tBasicTd);
    System.out.println("insert方法...");
    transaction.commit();
    session.close();
    } public Object getEntity(Class c, Serializable id) {
    return super.getHibernateTemplate().get(c, id);
    } @Override
    public List ImplPage(int rows, int currentPage, String sql) {
    Session session = getSession();
    System.out.println(sql);
    Query query = session.createSQLQuery(sql);

    query.setFirstResult((currentPage-1)*rows);
    query.setMaxResults(rows);
    return query.list();

    }
    //得到所有页面
    @Override
    public int getAllPage(int rows, String sql) {
    Session session = getSession();
    List list = session.createSQLQuery(sql).list();
    if(list.size() == 0){
    return 1;
    }else{
    return (list.size()+rows-1)/rows;
    }
    }}
      

  3.   

    哎,好了,原来是session没有关闭,终算弄出来了,谢谢各位