hibernate的配置文件是
<property name="dialect">net.sf.hibernate.dialect.OracleDialect</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.username">exam</property>
<property name="connection.password">exam</property>
<property name="connection.url">jdbc:oracle:thin:@192.168.0.24:1521:orcl</property>
<property name="connection.pool.size">1</property>
<property name="statement_cache.size">25</property>
<property name="jdbc.fetch_size">50</property>
<property name="jdbc.batch_size">30</property>我把connection.pool.size改成30也不管用,不知道connection.pool.size应该怎么设置,是不是connection.pool.size设置的问题?
<property name="dialect">net.sf.hibernate.dialect.OracleDialect</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="connection.username">exam</property>
<property name="connection.password">exam</property>
<property name="connection.url">jdbc:oracle:thin:@192.168.0.24:1521:orcl</property>
<property name="connection.pool.size">1</property>
<property name="statement_cache.size">25</property>
<property name="jdbc.fetch_size">50</property>
<property name="jdbc.batch_size">30</property>我把connection.pool.size改成30也不管用,不知道connection.pool.size应该怎么设置,是不是connection.pool.size设置的问题?
解决方案 »
- hibernate一对多映射问题,求解释
- 各位大哥来拯救一下小弟吧
- 这个异常怎么处理
- JSP页面打印问题求助,谢谢!
- websphere 配置WEB程序启动后出现的错误,请大家帮我分析一下
- 求助:Hibernate关于时间段的查询
- Xerces解析器 ,XML-RPC开发包谁有啊,给我发一个,谢谢
- 不用AXIS也不用MSSoap如何通过Java调用远程的Web Service呢?
- 使用java连接oracle9i过程中如何设置权限???
- 怎么样在weblogic配置sql server2000呢?接着用什么方法(最好能简单点)来测试是成功的呢?
- 请教在Jboss下配置JMS简单例子
- J2SDK 无法安装??
<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();
}
public static final ThreadLocal DBsession = new ThreadLocal();public static Session currentSession() throws HibernateException {
if (sessionFactory == null) {
// 如果sessionFactory实例为null则从JNDI中获取
if (getSystemSessionFactory() == false) {
throw new HibernateException("Exception geting SessionFactory from JNDI ");
}
}
Session s = (Session) DBsession.get();
if (s == null) {
s = sessionFactory.openSession();
DBsession.set(s);
}
return s;
}
Session s = (Session) DBsession.get();
DBsession.set(null);
if (s != null)
s.close();
}
private static boolean getSystemSessionFactory() {
try {
//从JNDI中取得SessionFactory的实例,如果出错返回false
Context inttex = new InitialContext();
sessionFactory =(SessionFactory) inttex.lookup("HibernateSessionFactory");
} catch (NamingException e) {
return false;
}
return true;
}