// 这是代码public List searchStuCourse(Pages pages) { PageList list = null;
Session session = null;
Connection con = null;
PreparedStatement ps = null;
ResultSet rs = null; try { session = this.getSession();
list = new PageList();
con = session.connection();
ps = con.prepareStatement(pages.getPageSql()); rs = ps.executeQuery();
EduOrder order = null;
while (rs.next()) {
order = new EduOrder();
order.setCourseId(rs.getLong("course_id"));
order.setCourseName(rs.getString("course_name"));
order.setCreateTime(rs.getDate("course_begintime"));
order.setFinishTime(rs.getDate("course_endtime"));
order.setStatus(rs.getLong("status"));
order.setFourmId(rs.getString("forum_id"));
list.add(order);
}
if (list.size() == 0) {
list.setCurrentPage(pages.getPages() - 1);
} else {
list.setCurrentPage(pages.getPages());// 页数 }
list.setTotalRowCount(pages.getCount());// 总条数
list.calcPageCount(pages.getRowPage());// 每页显示多少 } catch (Exception ex) {
ex.fillInStackTrace();
} finally {
try {
ps.close();
rs.close();
con.close();
} catch (Exception ex) {
ex.fillInStackTrace();
}
this.releaseSession(session);
}
return list;
}
Session session = null;
Connection con = null;
PreparedStatement ps = null;
ResultSet rs = null; try { session = this.getSession();
list = new PageList();
con = session.connection();
ps = con.prepareStatement(pages.getPageSql()); rs = ps.executeQuery();
EduOrder order = null;
while (rs.next()) {
order = new EduOrder();
order.setCourseId(rs.getLong("course_id"));
order.setCourseName(rs.getString("course_name"));
order.setCreateTime(rs.getDate("course_begintime"));
order.setFinishTime(rs.getDate("course_endtime"));
order.setStatus(rs.getLong("status"));
order.setFourmId(rs.getString("forum_id"));
list.add(order);
}
if (list.size() == 0) {
list.setCurrentPage(pages.getPages() - 1);
} else {
list.setCurrentPage(pages.getPages());// 页数 }
list.setTotalRowCount(pages.getCount());// 总条数
list.calcPageCount(pages.getRowPage());// 每页显示多少 } catch (Exception ex) {
ex.fillInStackTrace();
} finally {
try {
ps.close();
rs.close();
con.close();
} catch (Exception ex) {
ex.fillInStackTrace();
}
this.releaseSession(session);
}
return list;
}
解决方案 »
- 关于二叉树,请高人解答
- 一个JSP页面时,出现HTTP Status 500错误怎么解
- 需要javaEE的源码就是给Myeclipse里导入的那个
- 高分求助,jboss下,Jsp页面调用EJB中的方法出错,总是报编译不了
- 请教大虾们关于ValidatorActionForm的验证问题
- 讨论一下hibernate持久层的问题
- 一个简单的问题:)
- jb8启动weblogic7时,找不到wlntio.dll(可是它明明就在server/bin里呀)
- 在J2EE中连接数据库的问题
- 开发一个大框架把其它项目都集成到我们项目中有啥好的实现和技术?
- hibernate可以配置主键一对多么?
- AXIS deploy.wsdd 生成server-config.wsdd 出错
我用的的是Struts+spring+hiberante框架
这个spring 配置
<bean id="txProxyTemplate" abstract="true"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager"><ref bean="transactionManager"/></property>
<property name="transactionAttributes">
<props>
<prop key="save*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="remove*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory"><ref bean="sessionFactory"/></property>
</bean>
<!--bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean" -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource"><ref bean="dataSource"/></property>
<property name="mappingResources">
<list>
<value>/EduOrder.hbm.xml</value>
<value>/EduCourse.hbm.xml</value>
<value>/EduCourseRelation.hbm.xml</value>
<value>/EduCourseware.hbm.xml</value>
<value>/EduHomeCheck.hbm.xml</value>
<value>/EduHomeTitle.hbm.xml</value>
<value>/EduHomeWorkInfo.hbm.xml</value>
<value>/EduHomeWorkTitle.hbm.xml</value>
<value>/EduObject.hbm.xml</value>
<value>/EduPolicy.hbm.xml</value>
<value>/EsAdPage.hbm.xml</value>
<value>/EsAdPosition.hbm.xml</value>
<value>/EsAdSetting.hbm.xml</value>
<value>/EsForum.hbm.xml</value>
<value>/EsNewsColumn.hbm.xml</value>
<value>/EsNewsLink.hbm.xml</value>
<value>/EsNewsResource.hbm.xml</value>
<value>/EsNewsText.hbm.xml</value>
<value>/EsOperateLog.hbm.xml</value>
<value>/EsStatDay.hbm.xml</value>
<value>/EsStatMonth.hbm.xml</value>
<value>/EsSyscode.hbm.xml</value>
<value>/EsThread.hbm.xml</value>
<value>/EsThreadRes.hbm.xml</value>
<value>/UmsGroup.hbm.xml</value>
<value>/UmsModule.hbm.xml</value>
<value>/UmsRole.hbm.xml</value>
<value>/UmsRoleModule.hbm.xml</value>
<value>/UmsUser.hbm.xml</value>
<value>/UmsUserinfo.hbm.xml</value>
<value>/UmsUserRole.hbm.xml</value>
<value>/EsCourseControl.hbm.xml</value>
<value>/EsCourseScore.hbm.xml</value>
<value>/EsStuRecord.hbm.xml</value>
<value>/EsStuScore.hbm.xml</value>
<value>/EsComment.hbm.xml</value>
<value>/EsUserFriend.hbm.xml</value>
<value>/EsUserGroup.hbm.xml</value>
<value>/EsCourseLevel.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<!-- dialet for oralce -->
<prop key="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</prop>
<!-- dialet for mysql
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>-->
<!-- prop key="hibernate.hbm2ddl.auto">update</prop -->
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.use_outer_join">true</prop>
<prop key="hibernate.jdbc.fetch_size">30</prop>
<prop key="hibernate.jdbc.batch_size">50</prop>
<!-- prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop -->
</props>
</property>
</bean>
去掉之后就没有事了.
小弟对Spring不是很了解.
请帮忙解决一下
获得一个连接.
如果con不关闭得话,总是占用连接.连接池超出了范围.
{
return getHibernateTemplate().executeFind(new HibernateCallback()
{
public Object doInHibernate(Session session) throws HibernateException, SQLException
{
...
session = this.getSession();list = new PageList();
con = session.connection(); //这样取
.............
return list;
}
});
}