应该不会啊用tomcat,会不会是你的数据库操作部分不完善!
解决方案 »
- 求高手相助,获取形参应该的实参名称
- 输入一个数字长度实例化一个正方形字符串矩阵(保存在数组中)
- 目前对 hadoop 的前景了解甚少,不知道他的前途如何,有经验的给点建议啊
- java如何生成静态页面,及作用
- 为什么用了DWR弹出提示Failed to read input 的对话框呢?
- seam中session bean的使用问题
- JDBC的小问题
- 愿用全部家当求一个判断语句,进csdn发的第一个帖子,请大家过来帮帮我一把!先谢了!!!!!!!!!!!!!!!!!!!!!!!!!
- 请各位高手帮忙,有关于struts中数据源的使用
- 200分寻求《Java Development with Ant》
- 关于thinking in java中equals()方法的问题?
- 通过tomcat使用数据源的问题
内存也不是太小,首先看一下你程序里有没有没关的数据库连接,
tomcat的设置和apache的设置是怎样的?
再看一下是否用了太多的session?
<property name="dbcp.maxActive">100</property>
<property name="dbcp.whenExhaustedAction">1</property>
<property name="dbcp.maxWait">120000</property>
<property name="dbcp.maxIdle">10</property>
<property name="dbcp.ps.maxActive">100</property>
<property name="dbcp.ps.whenExhaustedAction">1</property>
<property name="dbcp.ps.maxWait">120000</property>
<property name="dbcp.ps.maxIdle">100</property>我加上了连接池,但是报错,错误信息是:ORA-01000: 超出打开游标的最大数我的程序是
public Question getQuestion(String tableName, long id) throws HibernateException{
this.initSession(); //代开session
Question ques=null;
String queryStr="from com.cbit_cn.exam.dao."+tableName+" as question where question.id='"+id+"'";
Query query = this.session.createQuery(queryStr);
List it = query.list();
if(it.size()!=0){
ques=(Question)it.get(0);
}
System.out.println("size of it size "+it.size());
this.closeSession(); //关闭session
return ques;
}我将上面这个方法循环执行100遍就会报错,好像是session释放不掉,为什么呢?释放session的代码是:
public static final ThreadLocal DBsession = new ThreadLocal();
public static void closeSession() throws HibernateException {
Session s = (Session) DBsession.get();
DBsession.set(null);
if (s != null)
s.close();
}